gpt4 book ai didi

python - 如何使用 pytest-cov 生成覆盖报告并打印到终端?

转载 作者:行者123 更新时间:2023-12-04 12:34:07 30 4
gpt4 key购买 nike

背景
我是使用 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%
然后我想生成一个 xml 报告,所以我更改了命令: python3 -m pytest --cov-report xml:coverage.xml --cov=myapplication问题
我遇到的问题是在添加 --cov-report xml:coverage.xml 之后我不再有任何输出到终端
看着 the documentation for pytest-cov我发现这个:

These three report options output to files without showing anything on the terminal:[goes on to show xml, html and annotation reporting options]



如何在同一测试运行中生成报告并打印到终端? (这甚至可能吗?)
(我可以运行测试套件两次,但如果可以,我想一次完成所有工作)

我正在使用这些版本:
  • Python 3.8.5
  • pytest 6.2.2(撰写本文时的最新版本)
  • pytest-cov 2.11.1 (-"-)
  • 最佳答案

    您可以通过指定另一个 --cov-report 来做到这一点。与终端输出格式之一的参数。您可以拥有 --cov-report term--cov-report term-missing .例如:

    python3 -m pytest --cov-report term --cov-report xml:coverage.xml --cov=myapplication
    pytest-cov docs you linked to对于如何 termterm-missing工作。

    关于python - 如何使用 pytest-cov 生成覆盖报告并打印到终端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66280468/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com