You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python coverage报告能否包含测试未导入、完全未触及的文件?

Python coverage统计未被导入文件覆盖率的实现方法

该需求可以实现,coverage工具原生支持统计完全未被测试代码导入的源码文件,只需手动指定要统计的源码范围即可。

方法1:运行时临时指定源码目录

默认情况下coverage只会统计运行过程中被导入加载过的文件,要覆盖全目录文件,只需在执行coverage run命令时添加--source参数,参数值为你要统计的源码根目录。
示例中需要统计当前目录所有Python文件,修改执行命令为:

venv/bin/coverage run --source . test.py

之后再执行coverage report就能看到module2.py出现在统计列表中,显示覆盖率为0%,输出示例如下:

Name         Stmts   Miss  Cover
--------------------------------
module1.py       1      0   100%
module2.py       1      1     0%
test.py          1      0   100%
--------------------------------
TOTAL            3      1    67%

方法2:通过配置文件永久生效

如果不想每次执行都手动加参数,可以在项目根目录创建.coveragerc配置文件,写入以下内容:

[run]
source = .
# 可添加omit配置排除不需要统计的文件
omit = 
    test.py
    */venv/*

配置完成后直接执行coverage run test.py即可自动应用规则,无需额外添加参数。

内容的提问来源于stack exchange,提问作者Alex028502

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 14:06:03