sun*_*ata 13 python code-coverage pytest pytest-cov
我刚开始使用 pytest 和 pytest-cov,已从 unittest +coverage.py 切换过来
我首先设置我的自动化测试以这种方式运行:
python3 -m pytest --cov=myapplication
这给了我这样的输出到终端:
----------- coverage: platform linux, python 3.8.5-final-0 -----------
Name Stmts Miss Cover
-----------------------------------------------
myapplication/__init__.py 0 0 100%
myapplication/file.py 30 30 0%
myapplication/another_file.py 20 6 70%
[...]
-----------------------------------------------
TOTAL 1195 464 61%
Run Code Online (Sandbox Code Playgroud)
然后我想生成一个 xml 报告,所以我更改了命令:
python3 -m pytest --cov-report xml:coverage.xml --cov=myapplication
我遇到的问题是添加后--cov-report xml:coverage.xml我不再从终端获得任何输出
查看pytest-cov 的文档我发现:
这三个报告选项输出到文件,而不在终端上显示任何内容:[继续显示 xml、html 和注释报告选项]
如何在同一测试运行中生成报告并打印到终端?(这可能吗?)
(我可以运行测试套件两次,但如果可以的话,我想一次完成所有事情)
我正在使用这些版本:
Jac*_*lor 29
您可以通过--cov-report使用一种终端输出格式指定另一个参数来完成此操作。你可以有--cov-report term或--cov-report term-missing。例如:
python3 -m pytest --cov-report term --cov-report xml:coverage.xml --cov=myapplication
Run Code Online (Sandbox Code Playgroud)
请参阅您链接到的 pytest-cov 文档以了解如何操作term和term-missing工作。
| 归档时间: |
|
| 查看次数: |
30684 次 |
| 最近记录: |