单元测试报告模板_一篇文章向你解释什么是Unittest单元测试框架(下)

cc4823d086b0a0f56f36c96a990457cb.gif

输出测试报告

5c5c136656afaaccf42de2db0df4fcc8.gif

unittest框架执行测试用例完成后会在控制台输出如上的结果,但实际测试过程中,我们需要输出测试报告,这个时候我们需要使用第三方模块。

01

HTMLTestRunner

HTMLTestRunner模块可以直接生成html格式的报告

下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html

下载后需要修改:

  • 94行引入的名称要改,从 import StringIO修改成 import io

  • 539行 self.outputBuffer = StringIO.StringIO()修改成self.outputBuffer=io.StringIO()

  • 631行 print >>sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime)修改成print (sys.stderr, '\nTime Elapsed: %s' %(self.stopTime-self.startTime))

  • 642行,if not rmap.has_key(cls): 修改成 if not cls in rmap:

  • 766行的uo = o.decode('latin-1'),修改成 uo=o

  • 772行,把 ue = e.decode('latin-1') 直接改成 ue = e

存放路径:将修改完成的模块存放在Python路径下Lib目录里即可。

run.py示例代码如下:

# -*- coding:utf-8 -*-# @author: 给你一页白纸import timeimport unittestimport HTMLTestRunner# 获取当前时间并指定时间格式,用于测试报告命名now = time.strftime("%Y-%m-%d_%H_%M_%S")# 测试报告存储路径report_dir = './report/'# 创建报告文件,并以写的形式打开文件,用于写入报告内容fp = open(report_dir + now + "_report.html", 'wb')# 初始化一个HTMLTestRunner实例对象,用来生成报告runner = HTMLTestRunner.HTMLTestRunner(stream=fp,                                       title="App自动化测试报告",                                       description="测试用例情况")# 定义测试用例路径test_dir='./testcase'# 加载测试用例suite = unittest.defaultTestLoader.discover(test_dir, pattern='test_*.py')# 执行测试用例runner.run(suite)fp.close()

运行run.py,会看到report中生成了html文件,即为测试报告。

7c2465ffd392357d32205933dd1b4114.png

浏览器打开该文件,内容如下:

f6e665fa5b0a8d8ab979a127e9c023ec.png

从报告内容中看出HTMLTestRunner.HTMLTestRunner()方法中参数所对应的内容,可以根据项目的实际需要指定参数内容。

02

美化版测试报告

在HTMLTestRunner基础上美化过的报告。

下载地址: 

https://pan.baidu.com/s/1Wd_FXJBu3ATgmCQHkzbGag,

提取码:f6uq,放置在Python安装路径的Lib文件夹里。

run.py示例代码如下:

# -*- coding:utf-8 -*-# @author: 给你一页白纸import timeimport unittestimport BSTestRunner# 获取当前时间并指定时间格式,用于测试报告命名now = time.strftime("%Y-%m-%d_%H_%M_%S")# 测试报告存储路径report_dir = './report/'# 创建报告文件fp = open(report_dir + now + "_report.html", 'wb')# 初始化一个HTMLTestRunner实例对象,用来生成报告runner = BSTestRunner.BSTestRunner(stream=fp,                                       title="App自动化测试报告",                                       description="测试用例情况")# 定义测试用例路径test_dir='./testcase'# 加载测试用例suite = unittest.defaultTestLoader.discover(test_dir, pattern='test_*.py')# 执行测试用例runner.run(suite)fp.close()

生成报告样式如下:

059808a8793b64766c13ea7a4d2d5ff4.png

两种报告模板可根据自己喜好任意选择。

f6ea10c6614d03736810bf4264ef1718.gif

e31b0015e143314b93be3f923b0c55e0.png

推荐阅读

点击阅读☞想学单元测试用例?这就来啦!

点击阅读☞引入MockMVC进行单元测试,可以省去很多麻烦

点击阅读☞前端大佬教你如何优雅地构建单元测试框架

点击阅读☞单元测试神器Jest,你真的会用么?

点击阅读☞即使不懂单元测试,会用这个工具也够了~

链接:https://www.cnblogs.com/lfr0123/p/13799178.htm

本文为51Testing经授权转载,转载文章所包含的文字来源于作者。如因内容或版权等问题,请联系51Testing进行删除

6897f53015b201359f5728d673eb7cf3.gif

91f862c81a62a9a2ab4001e8bd65d378.png

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
单元测试报告 版本:V1.3 文 档 编 号 保 密 等 级 作 者 最后修改日期 审 核 人 最后审批日期 批 准 人 最后批准日期 修订记录 日期 版本 修订说明 修订人 目 录 1 简介 2 1.1 目的 2 1.2 背景 2 1.3 范围 2 2 测试用例清单 2 3 功能测试分析 2 4 边界测试分析 2 5 覆盖率分析 2 6 内存使用分析 2 7 典型缺陷记录 3 7.1 缺陷1 3 7.1.1 表现 3 7.1.2 原因 3 7.1.3 方案 3 8 测试数据分析 3 8.1 测试有效性分析 3 8.2 测试效率分析 3 9 产品质量分析 4 10 测试结论 4 简介 目的 【描述该单元测试报告的目的。】 背景 【描述单元测试报告的背景,单元测试活动目的。如无特殊背景信息,可裁剪。】 范围 【说明该单元测试报告在整个项目周期的适用范围】 测试用例清单 模块 目标类 级别 用例类 用例描述 执行结果 备注 【被测的代码类】 【代码级别】 【Junit测试类1】 【意图描述】 【P/F】 【Junit测试类2】 功能测试分析 边界测试分析 覆盖率分析 目标类 级别 方法覆盖率 行覆盖率 备注 【被测的代码类】 【代码级别】 内存使用分析 典型缺陷记录 记录单元测试中所发现的典型缺陷或常见缺陷。供再次发现同类问题时,作为参考使用。 缺陷1 表现 【缺陷表现描述】 原因 【缺陷产生原因分析描述】 方案 【解决方案描述】 测试有效性分析 【统计实际发现的缺陷数据,分析与计划值产生偏差的原因,结合《项目量化管理计划》定义的阈值,确定是否采取相关措施】 计划发现缺陷数 致命 严重 一般 实际发现缺陷数 偏差分析 对策或调整措施 产品质量分析 【结合上述数据和信息,对本次测试的项目、产品的本身质量进行分析、评价和总结】 测试结论  【描述测试是否达到测试计划的目的,是否满足单元测试的结束条件。】

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值