我刚开始写一些单元测试我一直在使用Python项目unittest
和coverage
.我目前只测试一小部分,但我正在努力解决代码覆盖问题
我运行我的测试并使用以下内容获得覆盖
python -m unittest discover -s tests/ coverage run -m unittest discover -s tests/ coverage report -m
我遇到的问题coverage
是告诉我有44%的代码覆盖率并且只计算以下文件:
在单元测试中进行了测试(即,所有未测试的文件都丢失了,而不是在整体覆盖范围内)
在虚拟环境中的库中以及实际测试的代码覆盖率也是如此.当然不应该在结果中包括实际测试?
此外,它说在这些单元测试中实际测试的文件只测试了前几行(在大多数情况下是import语句)
我如何获得更实际的代码覆盖率,或者它是如何实现的?
添加--source=.
到coverage
运行线.它会将焦点限制在当前目录中,并将搜索.py
根本不运行的文件.