Pytest --cov未生成无测试文件的覆盖率报告如何解决?
解决pytest-cov不显示未被测试文件0%覆盖率的问题
方法1:明确指定覆盖范围
pytest-cov默认仅统计被测试用例直接/间接导入的文件,要强制包含b.py,可在命令中明确指定目标目录或模块:
# 统计当前目录下所有Python文件 pytest --cov=. --cov-report=xml # 或精准指定需要统计的模块 pytest --cov=a --cov=b --cov-report=xml
方法2:通过配置文件固定覆盖规则
在项目根目录创建pytest.ini文件,写入以下配置:
[pytest] addopts = --cov=. --cov-report=xml
之后直接执行pytest命令即可自动应用规则,统计目录内所有文件的覆盖率。
方法3:临时导入未测试文件(不推荐)
如果不想修改命令或配置,可在test_a.py中导入b.py:
import b
这种方式会让pytest-cov因为文件被导入而统计它,但会污染测试环境,仅适合临时验证场景。
内容的提问来源于stack exchange,提问作者mohsen74x
相关产品推荐
相关产品推荐

