python-Coverage 代码覆盖率统计工具,生成html代码报告

Posted Python 集中营

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-Coverage 代码覆盖率统计工具,生成html代码报告相关的知识,希望对你有一定的参考价值。

【阅读全文】

代码覆盖率

\'\'\'
摘自百度百科:
分析未覆盖部分的代码,从而反推在前期测试设计是否充分,没有覆盖到的代码是否是测试设计的盲点,为什么没有考虑到?
需求/设计不够清晰,测试设计的理解有误,工程方法应用后的造成的策略性放弃等等,之后进行补充测试用例设计。
检测出程序中的废代码,可以逆向反推在代码设计中思维混乱点,提醒设计/开发人员理清代码逻辑关系,提升代码质量。
代码覆盖率高不能说明代码质量高,但是反过来看,代码覆盖率低,代码质量不会高到哪里去,可以作为测试自我审视的重要工具之一。
\'\'\'

第三方库

# pip install coverage

控制台统计方式

# 需要统计的python文件,hello_world.py

def hello_world():

    print(\'Welcome to Python 集中营\')

# coverage命令执行代码统计

# coverage run hello_world.py

# 控制台输出报告

# coverage report

# Welcome to Python 集中营
# Name       Stmts   Miss  Cover
# ------------------------------
# test1.py      12     11     8%
# ------------------------------
# TOTAL         12     11     8%

# 生成html报告

# coverage html

# 打开项目名_py.html 可以在浏览器直接查看醒目报告

API统计方式

# 导入coverage代码覆盖率统计包
import coverage

if __name__ == \'__main__\':
    cover_code = coverage.coverage()  # 创建coverage统计对象
    cover_code.start()  # 开始统计
    hello_world()  # 需要统计的代码块
    cover_code.stop()  # 结束统计
    cover_code.save()  # 保存
    cover_code.report()  # 生成控制台报告
    cover_code.html_report()  # 生成html报告

# Welcome to Python 集中营
# Name       Stmts   Miss  Cover
# ------------------------------
# test1.py      12     11     8%
# ------------------------------
# TOTAL         12     11     8%

【粉丝福利】关注公众号,获取全套视频资料,Coverage 是用于统计 Python 代码覆盖率的工具,支持分支覆盖率统计,生成 HTML 格式的统计报告,Coverage利用到了Python虚拟机的trace机制。Coverage主要有两种覆盖率的统计方式,一种是在命令行使用Coverage命令进行统计。另一种则是通过API的方式进行统计。喜欢小编点个 \'关注\' 吧!

【往期精选】

● 磨刀不误砍柴工,PyCharm开发工具的常规配置,充分提高开发效率!

● python程序的处理进度、可视化管理,对运行步骤一目了然!

● python-openpyxl Excel的单元格样式设置,包括字体、样式、宽高等等!

● 了解一下百度提供的python通用文字识别功能,距离百度AI近了一点点!

● 一句代码生成的超炫二维码

● python-docxtpl妙用:论文神器,excel习题集自动转换成word文档格式!

● 办公室文员必备python神器,将PDF文件表格转换成excel表格!

● python 中最好用的身份证规则解析工具,地区码、性别、出生年月、身份证编码等快速校验!

● os用法总结:python中必须掌握的内置模块os,实现与计算机操作系统的常规交互!

● python 实用技巧:几十行代码将照片转换成素描图、随后打包成可执行文件(源码分享)

● python十行代码实现文件去重,去除重复文件的脚本

● python的GUI框架tkinter,实现程序员的流氓式表白逻辑

● 探究python函数的不定长参数*args与**kwargs

● 没有深思过的python冷知识你知道几个?

本文由微信公众号【python 集中营】发布,更多精彩文章、视频资料即可领取!

欢迎关注作者公众号【Python 集中营】,专注于后端编程,每天更新技术干货,不定时分享各类资料!

以上是关于python-Coverage 代码覆盖率统计工具,生成html代码报告的主要内容,如果未能解决你的问题,请参考以下文章

单测增量代码覆盖率统计方案

JAVA代码覆盖率工具JaCoCo--原理

多环境多需求并行下的代码测试覆盖率统计工具实现

JAVA代码覆盖率工具JaCoCo

测试覆盖率有哪几种统计方式

在Eclipse/STS中使用EclEmma进行覆盖率检查