1. 安装 coverage:
pip install coverage
2. 运行测试并生成覆盖率报告:
使用 unittest:
coverage run manage.py test
使用 pytest:
coverage run -m pytest
使用 nose:
coverage run manage.py test
3. 生成覆盖率报告:
coverage report -m
这将显示覆盖率的详细报告,包括每个文件的覆盖率百分比以及未覆盖的代码行。
4. 生成 HTML 报告:
coverage html
然后,你可以在项目根目录下的 htmlcov 目录中找到一个 HTML 报告。在浏览器中打开 index.html 文件,以可视化形式查看代码覆盖率。
5. 配置 .coveragerc 文件(可选):
你可以创建一个 .coveragerc 文件,以配置 coverage.py 的行为。例如:
[run]
source = myapp/
omit = */migrations/*
[report]
show_missing = True
这个配置文件指定了源代码目录和要省略的目录。show_missing = True 将在报告中显示未覆盖的行。
6. 集成到 CI/CD 流程:
你可以将代码覆盖率的检查集成到持续集成(CI)或持续部署(CD)流程中,以确保在每次提交或部署时都能得到最新的覆盖率信息。
通过集成 coverage.py,你可以更好地了解你的测试用例覆盖了哪些代码,以及哪些代码尚未被测试覆盖。这对于确保你的应用程序质量和可维护性非常有帮助。
转载请注明出处:http://www.pingtaimeng.com/article/detail/7290/Django