Bil*_*adj 1 python unit-testing code-coverage config
我使用unittest2与覆盖其中还包含我的项目在虚拟环境中。
当我运行时coverage report -m,报告显示来自lib/python3.5/site-packages/ 的其他几个文件。
因为有几个文件要排除,每次我想运行测试并查看覆盖率报告时,尝试从命令行排除它们是很乏味的。这就是我选择依赖配置文件的原因。
该文件说我应该在这样做.coveragerc文件。但是我看不到它。当我运行pip show coverage然后ls -a path_to_coverage_directory我看到config.py文件时。因此,通过查看选项在哪里--omit并将其更改为从测试和报告中排除了一个文件:
self._omit = None
Run Code Online (Sandbox Code Playgroud)
到:
self._omit = ['/home/begueradj/development/app/lib/python3.5/site-packages/unittest2/case.py']
Run Code Online (Sandbox Code Playgroud)
我保存了配置文件并再次运行测试以及覆盖率报告:我看到这个文件没有被排除。
我错过了什么?你如何解决这个问题?
.coveragerc是项目本地目录中的一个文件,指示覆盖率应如何处理该特定代码集。你应该有如下内容:
myproject/
- mycodefile1.py
- mycodefile2.py
- ...
- .coveragerc
Run Code Online (Sandbox Code Playgroud)
哪里.coveragerc是在你执行的目录coverage,并unittest从。它包含以下内容:
[run]
omit =
case.py
Run Code Online (Sandbox Code Playgroud)
或者可能是这样的:
[run]
source = mycodefile*.py
Run Code Online (Sandbox Code Playgroud)
您可以组合source并omit包含整个代码目录,同时排除这些目录中的特定文件。一切都取决于您的代码布局究竟是什么样子。请参阅此处了解如何指定代码文件。
| 归档时间: |
|
| 查看次数: |
1983 次 |
| 最近记录: |