我刚刚开始为一个使用unittest
和coverage
的python项目编写一些单元测试。我目前只测试了一小部分,但我正在尝试计算代码覆盖率
我运行我的测试并使用下面的代码获得覆盖率
python -m unittest discover -s tests/
coverage run -m unittest discover -s tests/
coverage report -m
我遇到的问题是coverage
告诉我有44%的代码覆盖率,并且只计算以下文件:
在单元测试中测试过(即,所有未测试的文件都丢失,不在整个覆盖范围内)
在虚拟环境中的库和实际测试的代码覆盖率。当然不应该在结果中包含实际的测试吗?
此外,它还指出,在这些单元测试中实际测试的文件只测试了前几行(在大多数情况下是import语句)
我该如何获得更真实的代码覆盖率,还是应该这样做?
如果使用
nose
作为测试运行程序,则它的覆盖率插件提供将
--source=.
添加到coverage
运行行。它既将焦点限制在当前目录,又将搜索根本未运行的.py
文件。相关问题 更多 >
编程相关推荐