使用coverage统计python web项目代码覆盖率的方法详解

yipeiwu_com6年前Python基础

本文实例讲述了使用coverage统计python web项目代码覆盖率的方法。分享给大家供大家参考,具体如下:

在使用python+selenium过程中,有时候考虑代码覆盖率,所以专门查了一下python的coverage,所以特此记录

1.安装coverage

自己电脑安装了pip的   直接: pip install coverage,等待安装完成

安装完成后,会在C:\Python27\Scripts下看到相关的安装信息;

2.安装完成以后,就是开始使用了

2.1核心参数---run

以前执行一个.py的文件方式: python test.py

现在使用coverage执行.py的文件方式: coverage run test.py  ,跑完后,会自动生成一个覆盖率统计结果文件(data file):.coverage

这个文件在你的text.py的文件对应目录下

2.2核心参数---report

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

2.3核心参数---生成html

最帅最酷的功能了,直接生成html的测试报告。

testhtml是你要生成的html文件夹的名称,这个可以自定义,生成的文件同样在你的.py的文件目录下

这里有一个的预览的html文件,点击可以看看效果

http://nedbatchelder.com/files/sample_coverage_html/,里面对于覆盖于未覆盖的代码都有高亮显示,这个就不多说了

html参数说明:

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

最后给个忠告:

通过对coverage的学习,其实你用用就会发现,问题还是很多的,所以其实这个的意义也不大,但是聊胜于无;

这是别人总结的,觉得很好,就复制过来了,大家可以想下:

a. 覆盖率数据只能代表你测试过哪些代码,不能代表你是否测试好这些代码。

b. 不要过于相信覆盖率数据。

c. 路径覆盖率 < 判定覆盖 < 语句覆盖

d. 测试人员不能盲目追求代码覆盖率,而应该想办法设计更多更好的案例,哪怕多设计出来的案例对覆盖率一点影响也没有。

关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python Socket实现简单TCP Server/client功能示例

本文实例讲述了Python Socket实现简单TCP Server/client功能。分享给大家供大家参考,具体如下: 网络上关于socket的介绍文章数不胜数。自己记录下学习的点点滴...

python字典多键值及重复键值的使用方法(详解)

python字典多键值及重复键值的使用方法(详解)

在Python中使用字典,格式如下: dict={ key1:value1 , key2;value2 ...} 在实际访问字典值时的使用格式如下: dict[key] 多...

详解python中各种文件打开模式

在python中,总的来说有三种大的模式打开文件,分别是:a, w, r 当以a模式打开时,只能写文件,而且是在文件末尾添加内容。 当以a+模式打开时,可以写文件,也可读文件,可是在读文...

利用Pandas和Numpy按时间戳将数据以Groupby方式分组

首先说一下需求,我需要将数据以分钟为单位进行分组,然后每一分钟内的数据作为一行输出,因为不同时间的数据量不一样,所以所有数据按照最长的那组数据为准,不足的数据以各自的最后一个数据进行补足...

详解在Python程序中使用Cookie的教程

大家好哈,上一节我们研究了一下爬虫的异常处理问题,那么接下来我们一起来看一下Cookie的使用。 为什么要使用Cookie呢? Cookie,指某些网站为了辨别用户身份、进行sessio...