Python - 测试覆盖率统计

安装:

Python 的测试覆盖率使用 Coverage 模块, 需要先安装:

pip install coverage

执行:

假设你原来执行单元测试的命令为:

python runtest.py

那么需要分析测试覆盖率时,只要将命令改为如下即可:

coverage run --source . --omit */tests* runtest.py

参数解释:

  • --source .指定分析的路径为当前路径下的文件,不会分析引用其他库的覆盖率;
  • --omit */tests*指定不分析的当前路径下的tests文件夹。

查看结果:

输出到控制台的简单统计结果:

coverage report

也可以转化成HTML,会在当前目录生成covhtml文件夹,打开html文件即可查看详细的覆盖率情况:

coverage html

集成至gitlab

yaml脚本添加如下两行:

coverage run --source . --omit */tests* runtest.py
coverage report

在gitlab的CI/CD -> General pipelines settings配置中,添加Test coverage parsing的正则:

\d+\%\s*$

运行后,单元测试的Job页面即可看到coverage

---EOF---

你可能感兴趣的:(Python - 测试覆盖率统计)