如何使用pytest为覆盖率报告设置不同的html输出目录?

Efr*_*ren 8 python coverage.py pytest

使用pytests覆盖是一个非常有用的工具.

Html报告允许很好的输出,但是通过命令行,找不到修改默认输出目录的选项(htmlcov)

示例命令行:

python -m pytest lib_being_tested\tests --cov lib_being_tested.module --cov-report=html
Run Code Online (Sandbox Code Playgroud)

Gér*_*aud 13

现在(3年后)您可以直接在命令行中更改默认输出目录:

python -m pytest --cov --cov-report=html:reports/html_dir --cov-report=xml:reports/coverage.xml lib_being_tested.module
Run Code Online (Sandbox Code Playgroud)

丢失的目录是动态创建的

Simeon的答案仍然与通过coverage配置文件选择此输出目录相关


Sim*_*ser 6

此配置选项不是其中一部分pytest-cov.

在默认情况下coverage.py调用的基础工具的配置文件中.coveragerc,您可以添加:

[html]
directory = differentname
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅文档:https://github.com/nedbat/coveragepy/blob/master/doc/config.rst

  • 这些文档也可以在他们的规范位置获得:http://nedbatchelder.com/code/coverage/config.html (4认同)