Python代码覆盖率统计工具coverage.py用法详解

作者:-零 时间:2021-02-02 22:55:51 

1、安装coverage

pip install coverage

安装完成后,会在Python环境下的\Scripts下看到coverage.exe;

2、Coverage 命令行

coverage run

运行一个.py的文件方式:python test.py

现在使用coverage执行.py的文件方式:coverage run test.py

会自动生成一个覆盖率统计结果文件(data file):.coverage,这个文件在你的test.py的文件对应目录下。

coverage report

有了覆盖率统计结果文件,只需要再运行report参数,就可以在命令里看到统计的结果。

coverage html -d covhtml

生成html的测试报告。

输出结果意义

Stmts 总的有效代码行数(不包含空行和注释行)
Miss 未执行的代码行数(不包含空行和注释行)
Branch 总分支数
BrMiss 未执行的分支数
Cover 代码覆盖率
Missing 未执行的代码部分在源文件中行号

命令详解

coverage run --help # 打印帮助信息
coverage run test_xxx.py # 执行test_xxx.py文件,会自动生成一个覆盖率统计结果文件.coverage
coverage report -m(带有详细信息) # 查看coverage报告,读取.coverage文件并打印到屏幕上,可以在命令行里看到统计结果
coverage html -d report # 生成显示整体的covergae html形式的报告 (在当前同路径下生成一个report文件夹,里面包含html形式的报告。通过查看report文件夹下的内容即可)

3、其他功能

除了使用命令行,还可以在python代码中直接调用coverage模块执行代码覆盖率的统计。使用方法也非常简单:


import coverage

cov = coverage.coverage()
cov.start()

# .. run your code ..

cov.stop()
cov.save()

文档:https://coverage.readthedocs.io/en/latest/cmd.html

来源:https://www.cnblogs.com/-wenli/p/14011789.html

标签:Python,代码,覆盖率,coverage
0
投稿

猜你喜欢

  • Python continue语句实例用法

    2022-03-30 02:22:58
  • Python timeit模块的使用实践

    2023-09-15 00:36:55
  • ASP中使用Session变量的优缺点

    2007-10-01 18:02:00
  • python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】

    2023-10-07 00:52:22
  • python实现对象列表根据某个属性排序的方法详解

    2022-12-24 23:47:43
  • oracle 删除重复数据

    2009-07-23 14:46:00
  • Python pytest装饰器总结(实例详解)

    2023-06-12 07:15:14
  • True or False,明明白白你的If语句流程

    2008-01-25 19:00:00
  • 基于python指定包的安装路径方法

    2023-06-04 03:10:02
  • python 在某.py文件中调用其他.py内的函数的方法

    2021-02-25 23:56:09
  • Python实现连接dr校园网示例详解

    2022-09-20 05:00:45
  • Python TypeError: ‘float‘ object is not subscriptable错误解决

    2023-09-13 05:33:02
  • python集合比较(交集,并集,差集)方法详解

    2023-09-30 22:11:13
  • python样条插值的实现代码

    2022-05-11 16:04:05
  • php在linux环境中如何使用redis详解

    2023-06-14 23:38:30
  • Python表示矩阵的方法分析

    2022-06-24 01:31:59
  • Python学习之异常中的finally使用详解

    2021-09-08 02:21:38
  • MySQL数据库线程缓冲池详解

    2012-04-13 11:48:01
  • python带你探寻WSGI Application原理

    2022-03-25 19:35:55
  • MySQL安全性指南 (2)

    2010-07-26 13:26:00
  • asp之家 网络编程 m.aspxhome.com