Pytest 2.5.2覆盖率报告必须处理的缺失行

maw*_*awi 9 python django pytest

我有一个Python的小宠物项目,我想做它的报道.我跑的时候

py.test -x -s MYPACKAGE --cov-report html --cov MYPACKAGE
Run Code Online (Sandbox Code Playgroud)

它向我展示了覆盖范围内缺少的大量线条.主要是导入和类/方法定义.截图

我确信所有这些线都在我的单元测试中处理,第19和31-35行验证了这一点.

为什么py.test将所有定义标记为"缺失"?

hyn*_*cer 5

一个常见的原因是模块conftest.py提前导入了应该测量的模块。当然,应该在测试之前评估测试配置。有时无法轻易消除这种依赖性。这就是为什么许多答案都建议如何规避pytest-cov扩展的方法:
答案1答案2