Python库-coverage测试覆盖率

Coverage.py 是用于测量Python程序代码覆盖率的工具。它 监视程序,注意代码的哪些部分已执行,然后 分析源以识别可以执行但未执行的代码。

覆盖率测量通常用于衡量测试的有效性。它 可以显示测试正在执行代码的哪些部分,以及哪些部分是 不。

安装 coverage.py

复制代码
$ python3 -m pip install coverage

运行测试

用于运行测试套件并收集数据。

coverage run

如果测试运行程序命令以"python"开头,只需替换首字母 "python"与"coverage run"。

python something.py成为coverage run something.py
python -m amodule成为coverage run -m amodule

如果使用的

如果您通常使用:

复制代码
$ pytest arg1 arg2 arg3

可以使用以下方法在覆盖率下运行测试:

复制代码
$ coverage run -m pytest arg1 arg2 arg3

指定范围

将覆盖率测量限制为当前目录中的代码,以及 查找根本没有执行的文件,将参数添加到 您的覆盖范围命令行。

--source=.

复制代码
coverage run --source=dir1,dir2 my_program.py arg1 arg2
coverage run --source=dir1,dir2 -m packagename.modulename arg1 arg2

分支覆盖率

coverage默认收集行覆盖率,如果想收集分支覆盖率,可以带参数--branch

可以看到views文件有12个分支,覆盖率95%

输出测试报告

coverage report

该标志还显示缺少语句的行号:-m

复制代码
$coverage report -m
复制代码
coverage report -m 文件名 文件名

可只收集指定的文件。

输出html测试报告

coverage html

相关推荐
敲代码敲到头发茂密2 天前
怎么做好白盒测试?
java·数据库·mysql·算法·单元测试·模块测试·测试覆盖率
看山还是山,看水还是。9 天前
Redis 配置
运维·数据库·redis·安全·缓存·测试覆盖率
Daorigin_com11 天前
如何从数字化迈向智能化的跨越,重塑企业合同管理的未来
搜索引擎·计算机视觉·数据挖掘·vim·信号处理·sklearn·测试覆盖率
程序员勋勋15 天前
【自动化测试】如何在jenkins中搭建allure
职场和发展·jenkins·测试覆盖率
测试秃头怪1 个月前
Pytest实践:掌握Python中的高级测试技术(全)
自动化测试·软件测试·python·测试工具·集成测试·pytest·测试覆盖率
天草二十六_简村人1 个月前
Java应用程序的测试覆盖率之设计与实现(二)-- jacoco agent
java·功能测试·单元测试·jenkins·测试覆盖率·devops
程序猿阿伟1 个月前
《异常处理与资源管理:构建稳定程序的关键纽带》
开发语言·c++·测试覆盖率
w125151140961 个月前
如何生成测试覆盖率的报告
java·intellij-idea·测试覆盖率
川石教育1 个月前
软件测试工程师:如何写出好的测试用例?
软件测试·测试工具·单元测试·测试用例·测试覆盖率·软件测试培训
Ice_Sugar_71 个月前
「自动化测试」Selenium 的使用
selenium·测试工具·jmeter·单元测试·测试用例·测试覆盖率