これは技術的な質問ではありません。ただし、次を使用して生成されるはずの.HTMLレポートが見つかりません。
py.test --cov-report html pytest/01_smoke.py
確かに、親の場所、またはテストスクリプトの場所に配置されると思いました。どちらもしませんし、私は見つけることができませんでした。それで、私はそれがまったく生成されていないと思いますか?
py.test --cov=MYPKG --cov-report=html
のように、対象とするディレクトリ/ファイルも指定する必要があると思います。その後、html/index.html
が生成されます。
--cov =/path/to/codeを指定しない場合、htmlはまったく生成されません。
$ py.test --cov-report html test_smoke.py
== test session starts ==
platform linux2 -- Python 2.7.12, pytest-3.4.0, py-1.5.2, pluggy-0.6.0 rootdir: /home/someuser/somedir, inifile: plugins: xdist-1.22.0, forked-0.2, cov-2.5.1 collected 3 items
test_smoke.py ... [100%]
== 3 passed in 0.67 seconds ==
出力が作成されたというメッセージがないことがわかります...ただし、-cov = ..を指定すると.
$ py.test --cov-report html test_smoke.py --cov=/path/to/code
== test session starts ==
platform linux2 -- Python 2.7.12, pytest-3.4.0, py-1.5.2, pluggy-0.6.0
rootdir: /home/someuser/somedir, inifile:
plugins: xdist-1.22.0, forked-0.2, cov-2.5.1
collected 3 items
test_smoke.py ... [100%]
---------- coverage: platform linux2, python 2.7.12-final-0 ----------
Coverage HTML written to dir htmlcov
合格したテストの統計がないことがわかります。代わりに、カバレッジがHTMLに書き込まれ、デフォルトのディレクトリ./htmlcovに送信されたことがわかります。
注:別のディレクトリが必要な場合は、出力スタイルhtml-> py.test --cov-report html:/ path/to/htmldir test_smoke.py --cov =/pathに:/ path/to/directoryを付加します。/to/code
プレーンなhtmlファイルが表示されている場合、これは問題が--cov =/path/to/my/pkgである可能性があることを示しています...テストしているコードがここにあることを確認しますか?
HTMLでレポートを生成する場合は、テストファイルの完全なファイルパスを指定します。
py.test --cov-report html test_file_name.py --cov=/home/ubuntu/venv/python3/lib/python3.7/site-packages/test/
次に、pythonサーバーを起動します
python -m http.server
Htmlcovディレクトリのhtml
ファイルに移動します
http://0.0.0.0:8000/venv/python3/lib/python3.7/site-packages/htmlcov/
レポートが表示されます