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


Posted in Python onNovember 25, 2020

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python sys.path详细介绍
Oct 17 Python
Django中实现一个高性能计数器(Counter)实例
Jul 09 Python
详解Python中的array数组模块相关使用
Jul 05 Python
python机器学习之决策树分类详解
Dec 20 Python
将python代码和注释分离的方法
Apr 21 Python
python实现雪花飘落效果实例讲解
Jun 18 Python
python实现批量修改服务器密码的方法
Aug 13 Python
Python 取numpy数组的某几行某几列方法
Oct 24 Python
python set集合使用方法解析
Nov 05 Python
django 中使用DateTime常用的时间查询方式
Dec 03 Python
PyQt实现计数器的方法示例
Jan 18 Python
Python实现拼音转换
Jun 07 Python
python 实时调取摄像头的示例代码
Nov 25 #Python
Python存储读取HDF5文件代码解析
Nov 25 #Python
python 简单的调用有道翻译
Nov 25 #Python
浅析Python的命名空间与作用域
Nov 25 #Python
重构Python代码的六个实例
Nov 25 #Python
python try...finally...的实现方法
Nov 25 #Python
通过Python pyecharts输出保存图片代码实例
Nov 25 #Python
You might like
通过文字传递创建的图形按钮
2006/10/09 PHP
php代码审计比较有意思的例子
2014/05/07 PHP
php中fsockopen用法实例
2015/01/05 PHP
thinkPHP实现多字段模糊匹配查询的方法
2016/12/01 PHP
Laravel中encrypt和decrypt的实现方法
2017/09/24 PHP
jQuery html()等方法介绍
2009/11/18 Javascript
Extjs TriggerField在弹出窗口显示不出问题的解决方法
2010/01/08 Javascript
location.search在客户端获取Url参数的方法
2010/06/08 Javascript
js onkeypress与onkeydown 事件区别详细说明
2012/12/13 Javascript
jquery中加载图片自适应大小主要实现代码
2013/08/23 Javascript
javaScript array(数组)使用字符串作为数组下标的方法
2013/11/19 Javascript
JS修改iframe页面背景颜色的方法
2015/04/01 Javascript
JS处理json日期格式化问题
2015/10/01 Javascript
JavaScript判断数字是否为质数的方法汇总
2016/06/02 Javascript
微信小程序实战之自定义抽屉菜单(7)
2017/04/18 Javascript
Vue.js devtool插件安装后无法使用的解决办法
2017/11/27 Javascript
JavaScript函数节流和函数去抖知识点学习
2018/07/31 Javascript
微信小程序列表时间戳转换实现过程解析
2019/10/12 Javascript
js实现表格数据搜索
2020/08/09 Javascript
Python multiprocessing.Manager介绍和实例(进程间共享数据)
2014/11/21 Python
python用10行代码实现对黄色图片的检测功能
2015/08/10 Python
浅析Python中yield关键词的作用与用法
2016/11/29 Python
python中的协程深入理解
2019/06/10 Python
python判断无向图环是否存在的示例
2019/11/22 Python
初探CSS3中的calc()功能
2015/07/14 HTML / CSS
浅谈HTML5新增及移除的元素
2016/06/27 HTML / CSS
基于html5实现的图片墙效果
2014/10/16 HTML / CSS
Clearly澳大利亚:购买眼镜、太阳镜和隐形眼镜
2018/04/26 全球购物
产品工艺师的岗位职责
2013/11/15 职场文书
CNC数控操作工岗位职责
2013/11/19 职场文书
小学生推普周国旗下讲话稿
2014/09/21 职场文书
教师国庆节演讲稿范文2014
2014/09/21 职场文书
无锡灵山大佛导游词
2015/02/09 职场文书
2015年世界无烟日活动方案
2015/05/04 职场文书
小学生心理健康活动总结
2015/05/08 职场文书
Nginx防盗链与服务优化配置的全过程
2022/01/18 Servers