输出测试报告

当我们测试完了,肯定要输出测试报告,HTMLTestRunner是Unittest框架下的一个扩展,它用来生成HTML测试报告

  1. 下载HTMLTestRunner.py文件,地址:http://tungwaiyip.info/software/HTMLTestRunner.html
  2. 将下载的文件放在Python安装目录下的Lib文件夹中,我的是:D:\Python\Python37\Lib 这个目录
下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html
(选中该py文件,单击鼠标右键,另存为本地)
  1. 修改HTMLTestRunner.py文件,因为这个库是Python2编写的
第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, ‘\nTimeElapsed: %s‘ % (self.stopTime-self.startTime))
第642行   将if not rmap.has_key(cls):修改成if not cls in rmap:
第766行   将uo = o.decode(‘latin-1‘)修改成uo = e
第772行   将ue=e.decode('latin-1')修改为ue=e
  1. 导出模块import HTMLTestRunner
from HTMLTestRunner import HTMLTestRunner
  1. 测试报告输出路径
    time = time.strftime("%Y%m%d%H%M%S")path = os.path.dirname(os.path.realpath(__file__))filename = path + '\\' + time + 'Test_Result.html'
  1. 在测试代码尾部编写HTMLTestRunner方法
 fp = open(filename, "wb")runner = HTMLTestRunner(stream=fp, title=u"MathTest测试报告", description=u"用例执行情况")runner.run(suite)fp.close()

我们用上次的工程来进行修改,输出测试报告,代码如下

import os
import time
import unittest
from HTMLTestRunner import HTMLTestRunner
from Test_Case import MathCase
from Test_Case2 import MathCase2if __name__ == "__main__":suite = unittest.TestSuite()"装载测试用例"suite.addTest(MathCase("test_add"))suite.addTest(MathCase("test_sub"))suite.addTest(MathCase2("test_mul"))suite.addTest(MathCase2("test_div"))"""报告时间为当前时间,并给出输出格式测试路径为当前工程路径文件命名为路径+\\+当前时间+test_result.html"""time = time.strftime("%Y%m%d%H%M%S")path = os.path.dirname(os.path.realpath(__file__))filename = path + '\\' + time + 'Test_Result.html'fp = open(filename, "wb")runner = HTMLTestRunner(stream=fp, title=u"MathTest测试报告", description=u"用例执行情况")runner.run(suite)fp.close()

运行结果

工程目录打开刚输出的测试报告

summary,Failed,All,这三个可以展开查看详细的情况

参考:https://blog.csdn.net/wxy_summer/article/details/52814791

Unitest框架的使用(四)HTMLTestRunner输出测试报告相关推荐

  1. appium+python+windows执行测试用例,并使用HTMLTestRunner输出测试报告

    搭建环境时有一个问题,就是在每个测试用例完成之后都会执行tearDown,然后重新setUp,这样导致脚本的执行效率偏低,而且会有大量的重复性的步骤.当然有时测试脚本确实需要每次都重新开启一个干净的a ...

  2. python运维脚本部署jdk_Jenkins自动执行Python脚本,并输出测试报告

    这段时间,在家时间自由(除了睡觉8小时,其他时间都在工作和学习),有大把的时间实操练习一些硬技能: 今天,更新一篇利用Jenkins这套框架,调用Python自动化脚本,并输出测试报告的手把手实操文章 ...

  3. HTMLTESTRunner自动化测试报告增加截图功能

    我们都知道HTMLTESTRunner自动化测试报告,是Unittest单元测试框架报告,那么在做ui测试的时候就有点不适用了. 我们需要出错截图功能. 以下是我改的,增加了截图功能,先展示界面,再展 ...

  4. python中unitest_基于Python的unitest框架介绍

    一:unitest介绍 1.unittest是python自带的单元测试框架. 2.unittest的流程: 由TestLoader加TestCase到TestSuite, 由TextTestRunn ...

  5. SSM框架搭建(四) springmvc和mybatis的配置

    SSM框架搭建(一) JDK和MAVEN环境搭建 SSM框架搭建(二) 创建MAVEN项目 SSM框架搭建(三) 数据库创建和MyBatis生成器自动生成实体类.DAO接口和Mapping映射文件 S ...

  6. Java自动化测试框架-06 - 来给你的测试报告化个妆整个形 - (下)(详细教程)

    简介 经过上一次的化妆和整形,有客户提出需求能不能将那个普通会员的套餐再升级一下,再漂亮一点.所以这次咱们就来看看从哪里下刀可以使它变得再漂亮一点点. 上一篇文章修改了一些基本的ReportNG信息, ...

  7. Scrapy框架学习(四)----CrawlSpider、LinkExtractors、Rule及爬虫示例

    Scrapy框架学习(四)--CrawlSpider.LinkExtractors.Rule及爬虫示例 CrawlSpider.LinkExtractors.Rule是scrapy框架中的类,其中Cr ...

  8. Jenkins集成taffy进行自动化测试并输出测试报告

    本文主要介绍Jenkins集成taffy/nose框架进行自动化测试并输出测试报告方法. 0. 测试环境 Jenkis主节点部署在CentOS系统上,子节点为Win10 64位系统(即我们本机运行自动 ...

  9. ACMNO.25 C语言-间隔输出 写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出1 9 9 0。 输入 一个四位数 输出 增加空格输出

    题目描述 写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格.如输入1990,应输出"1 9 9 0". 输入 一个四位数 输出 增加空格输出 样例输入 199 ...

最新文章

  1. opencv 自带库Canny边缘检测
  2. mac shell命令连接mongo
  3. 【SSH三个框架】Hibernate第八部分基础:经营-many关系
  4. B - 一只小蜜蜂...
  5. 带有JSF,Servlet和CDI的DynamicReports和JasperReports
  6. Express接口案例——完成文章评论相关的接口
  7. 昆仑通态触摸屏数据转发上传_嵌_ModbusTcpIp数据转发 昆仑通态屏与屏之间通讯 - 下载 - 搜珍网...
  8. Google开源项目风格指南-Python(C++)风格指南
  9. GBase 8a数据库Hash分布表和随机分布表hash索引的区别
  10. 华为服务器虚拟化:Fusion Compute基础教程
  11. 量子世界的测不准定律
  12. 那些你可能不知道的视频下载奇技淫巧
  13. HDRP shader 获取阴影(Custom Pass)
  14. ERROR:C3848
  15. window.onload与body.onload
  16. laragon 之Nginx
  17. linux切换内核版本
  18. Nginx - 静态网站;负载均衡;静态代理;动静分离;虚拟主机
  19. 《邱岳的产品实战》学习笔记:第9周
  20. 内核源码中版本号详解(KERNEL_VERSION KERNEL_VERSION)

热门文章

  1. C语言 n*n矩阵求值及求逆矩阵
  2. java socket返回_java中用Socket向ServerSocket发送信息,ServerSocket用接收到的Socket返回一条信息,但是返回时报错......
  3. lambda 两个list获取交集_《Java8 实战》笔记 - Lambda 表达式
  4. 如何让地面不起灰_解决水泥地面起灰的省钱方法
  5. vb6.0 listview隐藏水平方向滚动条_为Vuetify的UI组件添加滚动条
  6. python列表内置函数_Python-列表总结(操作符、方法、内置函数、相关模块)
  7. c++如何判断两个字符串是否相同?_链表 | 如何判断两个单链表(无环)是否交叉...
  8. Jupyter运行GitHub里的MXNet源代码
  9. 安装系统显示sql服务器未安装,mssqlserver服务未安装怎么办 mssqlserver怎么安装
  10. aes ios php,AES算法在PHP和Android和iOS上有所不同