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

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值