python统计单元测试代码覆盖率

1.1.1实现过程

  1. 准备工作
    首先在运行命令前,我们需要安装一个包:coverage
    命令如下:
    pip install coverage #(py -3 -m pip install coverage)
    安装成功后,会出现Successfully等字样。
  2. 实现代码覆盖率命令
    一共涉及到的命令有3个,这里先全部给出,后续在用例子做详细使用讲解:
    第一个命令为运行一下你的测试脚本文件,第二个命令会在控制台打印出覆盖率报告信息,第三个命令会在同级目录下生成一个htmlcov的文件夹,打开文件夹中的index.html即可图形化界面方式查看代码覆盖率。
    coverage?run?xxx.py
    coverage report -m
    coverage html
  3. 代码覆盖率-实际例子
    如:我想测试我本地operate_calculate.py代码的代码覆盖率,则可以如下进行:
    命令一:coverage run operate_calculate.py

命令二:coverage report -m

命令三:coverage html

如此,就会生成一个htmlcov文件夹,该文件夹下内容如下:

打开index.html,即可看到美观的测试报告:

点击具体的module,还能查看具体的信息,如点击Calc.py:

红色部分为未执行到的代码行。

以上就是python利用coverage包实现代码覆盖率的所有内容。

原文地址:http://blog.51cto.com/13496943/2159729

时间: 2024-10-30 22:18:35

python统计单元测试代码覆盖率的相关文章

使用JaCoCo统计单元测试代码覆盖率

1 JaCoCo介绍 JaCoCo是EclEmma团队基于多年覆盖率库使用经验总结而研发的一个开源的Java代码覆盖率库. 2 Maven单模块接入 在工程的pom.xml文件中添加如下内容: <build> <plugins> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>

通过JaCoCo统计接口测试代码覆盖率

通过JaCoCo统计接口测试代码覆盖率 JaCoCo 需求:统计微服务接口测试的代码覆盖率 JaCoCo的ant与maven方法都是在编译期对单元测试的覆盖率统计 JaCoCo的可以开启一个agent服务收集运行过程中的代码执行覆盖率. 主要会用到jacoco 的两个功能:agent和cli 覆盖率收集 1. 收集方式 2. JaCoCo使用 Sprint Boot测试项目 1. 创建项目 2. 工程结构 3. CountController.java 4. 上传代码到github 覆盖率统计测

Python统计列表中的重复项出现的次数的方法

前言 在实际工作和学习中,经常会遇到很多重复的数据,但是我们又必须进行统计,所及这里简单介绍一下统计列表中重复项的出现次数的简单方法. 实例 本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴.具体方法如下: #方法1: mylist = [1,2,2,2,2,3,3,3,4,4,4,4] myset = set(mylist)  #myset是另外一个列表,里面的内容是mylist里面的无重复 项 for item in myset

python 统计时间,写日志

python 统计时间使用time模块,写日志使用logging模块,这两个都是标准模板. 测试socket使用socket模块 # 统计时间 ---------------------- import time start = time.time() end = time.time() stamp = end - start print "耗时", stamp # 日志 ----------------------- import loggingimport datetime cur

使用Python统计端口TCP连接数

此脚本可以用来统计某个端口上连接的IP的数量,统计连接到这一端口的所有IP.最多的IP和次数以及TCP连接状态. 涉及到Python读取网络连接统计信息以及统计计算的一些基本操作.在编写脚本的过程中预先定义了统计信息的数据结构,在向最终结果中添加统计信息时需要用到list去重功能,因此临时创建了一个列表使用set()函数去重.set()函数不能直接add字典类型,因此先将字典转成可哈希的字符串,再将去重后的字符串转成字典.其中字典.列表和集合都属于不可哈希的类型. 此脚本可以用于Windows.

Python统计nginx脚本信息

1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 import urllib2 4 import json 5 import subprocess 6 import threading 7 8 #统计10个最长访问的ip 9 ip_raw = subprocess.Popen("cut -d ' ' -f1 host.access.log.* | sort | uniq -c | sort -rn | head -n 10 | awk '{p

python 统计桃子的个数(猴子分桃子)

周未在XXQQ群中,看到一个Python面试题,看到其中又是猴子,又是桃子,甚是喜欢:我也来写一个Python统计桃子. #!/usr/bin/env python # -*- coding:utf-8 -*- ''' 题目:设有一堆桃子是7个猴子的公共财产,它们要平均分配.第一个猴子来后,左等右等都没有等到别的猴子如约前来, 便只好动手把桃子均分成7份,发现还多出1个.它觉得自己辛苦了,就将多出的1个桃子吃掉了,并带上7份中自己的那1 份走了.第二个猴子来了,它不知道之前发生的情况,以为桃子还

python统计文档中词频

python统计文档中词频的小程序 python版本2.7 程序如下,测试文件与完整程序在我的github中 1 #统计空格数与单词数 本函数只返回了空格数 需要的可以自己返回多个值 2 def count_space(path): 3 number_counts = 0 4 space_counts = 0 5 number_list = [] 6 7 with open(path, 'r') as f: 8 for line in f: 9 line = line.strip() 10 sp

sql和python统计ip(用户)当天充值总额

sql查询当天的充值记录导入 sql code --查询当天的数据 select * from a where generateTime=sysdate --查询一个星期的数据 select * from a where (sysdate-generaeTime)=7 --查询一个月的数据 select * from a where months_between(sysdate,generateTime)=1  --查询某一天的数据 select * from table where col b