考虑下面的python项目结构。
Car.py
test_car.py
Van.py
__main__.py当我使用nose运行代码覆盖率时,它只考虑编写了单元测试的文件(例如,Car.py有一个单元测试test_car.py)。我使用以下命令生成报告。
nosetests --with-coverage --cover-erase --cover-html它会生成以下覆盖率报告。
.
Name Stmts Miss Cover
----------------------------
Car.py 11 3 73%
----------------------------------------------------------------------
Ran 1 test in 0.007s
OK但是我的项目有更多的文件(Van.py)。但覆盖率报告不包含这些文件,最终覆盖率也不包括这些文件。如果报告考虑了所有文件,则最终百分比将低于73%。
如何通过考虑所有文件来生成覆盖报告。没有单元测试的文件应该在报告中显示0%的代码覆盖率。我的项目比这个样本大得多。我如何达到这个要求?
发布于 2017-07-04 21:41:10
它非常简单明了。该死的,我没有RTM。为了做到这一点,有一个标志--cover-inclusive。根据文档,“在覆盖率报告中包括工作目录下的所有python文件。如果并非所有文件都是由测试套件导入的,则有助于发现测试覆盖率中的漏洞。NOSE_COVER_INCLUSIVE”
下面是如何使用它。
nosetests --with-coverage --cover-erase --cover-inclusive --cover-htmlhttps://stackoverflow.com/questions/44906689
复制相似问题