私のプロジェクトパッケージの一部は、jenkinsジョブによってvenv
にインストールされています。インストール後、ジョブはいくつかのユニットテストを個別のリポジトリから取り出し、インストールされたパッケージに対して実行します。インストールされているパッケージのカバレッジでnose2を実行
私の問題は、coverage
はテストスクリプトのみをカバーし、インストールされたパッケージはカバーしていません。
は、ここでフォルダ構造です:
JenkinsWorkspace
|_Venv
|_MyProject
|_trunk
|_Python
|_Package1
|_Package2
|_temp_tests
|_test_suite1.py
|_...
は、だから私は思った以上の説明のために、私はMyProject
にパッケージを反復、temp_tests
に各1のテストをチェックアウトし、temp_tests
でcd
とnose2 -t ..\..\..\Venv\Lib\site-packages
を呼び出します-t
paramは最上位ディレクトリを設定し、そこにインストールされたものを使用します。そして、はい、テストはうまくいっています。しかし、coverage
はテストスイートだけをカバーします。 インストールされたパッケージのカバレッジを行うように鼻に指示する方法はありますか?完全のために
ここに私のunittest.cfg
:
[coverage]
coverage-report = term-missing
always-on = True
coverage-config = .coveragerc
[junit-xml]
always-on = True
keep_restricted = False
path = nose2-junit.xml
test_fullname = False
と.coveragerc
:
# .coveragerc
[run]
branch = True
[report]
show_missing = True
omit =
build/*
tests/*
setup.py
*/__init__.py
注意をたった今。どのように動作するか教えてください。 – yacc