我有一个目录tests
其中包括许多不同的测试,名为test_*
.
我试着跑coverage run tests
但它不起作用。
如何运行单个命令来覆盖目录中的多个文件?
下面是一个完整的示例,其中来自同一 PWD 的所有阶段的命令都集中在一个位置。通过一个精心设计的示例,我还包括了覆盖运行之前和之后的测试和报告部分。我运行了以下步骤,它在 osx/mojave 上运行得很好。
- 发现并运行测试目录中的所有测试
$
python -m unittest discover <directory_name>
或者
发现并运行“目录”中的所有测试,其中测试的文件名模式为 *_test.py
$
python -m unittest discover -s <directory> -p '*_test.py'
- 对所有模块进行运行覆盖
$
coverage run --source=./test -m unittest discover -s <directory>/
- 从同一目录获取覆盖率报告 - 无需 cd。
$
coverage report -m
请注意,在上面的示例中,测试目录不必是
名为“test”,测试模块也是如此。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)