HTMLTestRunner下载安装及用法

1. 说明

HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展。它生成易于使用的 HTML 测试报告

本文针对Python2.7版本, 那么对于Python3.x的使用,需要改动几处。见 6. 适配Python3

2. 下载

下载HTMLTestRunner.py文件,地址为:

http://tungwaiyip.info/software/HTMLTestRunner.html

3. 安装

安装方法区分平台

Windows平台:

将下载的文件放入…\Python27\Lib 目录下

Linux平台:

下需要先确定 python 的安装目录,打开终端,输入 python 命令进入 python 交互模式,通过 sys.path 可以查看本机 python 文件目录,以管理员身份将 HTMLTestRunner.py 文件考本到/usr/lib/python2.7/dist-packages/ 目录下

4. 使用

import HTMLTestRunner

class UCTestCase(unittest.TestCase):
def setUp(self):
pass def tearDown(self):
pass def testCreateFolder(self):
pass def testDeleteFolder(self):
pass if __name__ == "__main__":
# 定义一个单元测试容器
testsuite = unittest.TestSuite() # 将测试用例加入到测试容器
testsuite.addTest(UCTestCase("testCreateFolder"))
testsuite.addTest(UCTestCase("testDeleteFolder")) # 获取当前时间,这样便于下面的使用。
now = time.strftime("%Y-%m-%M-%H_%M_%S",time.localtime(time.time())) # 打开一个文件,将result写入此file中
filePath = "C://PythonProject//py2//debug_HTMLtestRunner//Result" + now + ".html"
fp=open(filePath ,"wb")
runner = HTMLTestRunner.HTMLTestRunner(stream=fp, title='test result', description=u'result:') #执行测试用例
runner.run(testsuite) #关闭文件
fp.close()

5. 测试报告展示

名称展示:

内容展示:

6. 适配Python3

具体改动如下:

第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:

第767行,将uo = o.decode(‘latin-1’)修改成uo = e

第775行,将ue = e.decode(‘latin-1’)修改成ue = e

第779行,将output = saxutils.escape(uo+ue),修改成output = saxutils.escape(str(uo)+str(ue)),

注意:行数可能因为版本不同出现略微误差

将上述几处改动,保存成功后,再将HTMLTestRunner.py放到C:\Python36\Lib目录中,

检验是否加载成功,在Python IDLE 中输入

import HTMLTestRunner

若无报错,那么加载成功。

6.1 修改后源码下载地址:

https://pan.baidu.com/s/1c2OyyPE

将下载的HTMLTestRunner.py放到C:\Python36\Lib目录中,

检验是否加载成功,在Python IDLE 中输入

import HTMLTestRunner

若无报错,那么加载成功。

使用HTMLTestRunner生产报告的更多相关文章

  1. 使用HTMLTestRunner生成报告

    使用HTMLTestRunner生成报告 unittest本身并不具备这个功能,需要使用HTMLTestRunner库 使用步骤: 首先需要下载.py文件:http://tungwaiyip.info ...

  2. 调用HTMLTestRunner生产的报告内容为空解决办法

    开始代码如下,生成报告内容为空: #coding=utf-8 import unittest,time,reimport requestsimport jsonimport HTMLTestRunne ...

  3. selenium(python)用HTMLTestRunner导出报告(断言)信息的显示

    导出报告如图所示,没有显示相关信息 修改HTMLTestRunner.py文件的763-768行,注释掉if else,保留else 的uo = o 再次运行可看到信息(测试用例中的print信息也会 ...

  4. HTMLTestRunner生成报告 中文展示乱码的问题

  5. 用PyCharm执行测试成功但无法生成HTMLTestRunner报告

    问题:代码写的没问题,执行也成功了,但就是无法生成HTMLTestRunner的报告 其实这是编辑器搞得鬼,编辑器为了方便用户执行测试,都有一项功能,可以用编辑器来调用unittest或者nose来执 ...

  6. Selenium HTMLTestRunner 执行测试成功但无法生成报告

    为什么用PyCharm或者Eclipse执行测试成功但无法生成HTMLTestRunner报告 最近遇到一些人问这样的问题: 他们的代码写的没问题,执行也成功了,但就是无法生成HTMLTestRunn ...

  7. 关于python3 使用pycharm+unittest+html+HTMLTestRunner 测试用例运行正常,但却不能生成测试报告的解决方法

    关于python3 使用pycharm+unittest+html+HTMLTestRunner 测试用例运行正常,但却不能生成测试报告的解决方法 这个问题我也遇到过,以下是解决办法   该方法适用于 ...

  8. [Python]如何使用HtmlTestRunner让自动化测试报告内容更丰富

    简述 使用selenium webdriver + Python做自动化测试,执行完成后要生成测试报告,Python我们使用的HTMLtestrunner 进行生成,但是默认提供的生成报告内容,并不能 ...

  9. 测者的测试技术手册:自动的自动化框架EvoSuite集成Cobertura得到可视化的代码覆盖报告

    EvoSuite是由Sheffield等大学联合开发的一种开源工具,用于自动生成测试用例集,生成的测试用例均符合Junit的标准,可直接在Junit中运行.得到了Google和Yourkit的支持. ...

随机推荐

  1. 用python进行服务器的监控

    用python进行服务器的监控 在linux服务器中,一切皆为文件,就是说,服务器运行的个中信息,其实是可以从某些文件中查询得到的:百度后,你会知道,在Linux系统中,有一个/proc的虚拟文件系统 ...

  2. CodeForces - 369E Valera and Queries(树状数组)

    CodeForces - 369E Valera and Queries 题目大意:给出n个线段(线段的左端点和右端点坐标)和m个查询,每个查询有cnt个点,要求给出有多少条线段包含至少其中一个点. ...

  3. Java-UncaughtExceptionHandler 捕获线程异常

    实现 UncaughtExceptionHandler 类,重写 uncaughtException 方法. public class MyUncaughtExceptionHandler imple ...

  4. koa 路由、视图模块化(二)

    1.项目目录 2.路由 根目录/routes/index.js -- 首页 const router = require('koa-router')(); router.get('/', async ...

  5. 网络配置及一些shell命令概览

    一.临时配置网络(ip,网关,dns)+永久配置 1.临时配置网络IP地址命令为“ifconfig 网卡名 ip地址/24”,例如: ifconfig eth0 192.168.16.253/24 2 ...

  6. 2-mybatis-启动

    启动相关的类主要位于session包下. 参照mybatis官方文档,从xml中构建SqlSessionFactory后,可以获取SqlSession,然后使用SqlSession查询数据库得到结果. ...

  7. 自定义application的全局捕获异常实现

    package com.loaderman.global; import android.app.Application; import android.os.Environment; import ...

  8. Nova 实现的 Fit Instance NUMA to Host NUMA 算法

    目录 文章目录 目录 前文列表 numa_fit_instance_to_host _numa_fit_instance_cell _numa_fit_instance_cell_with_pinni ...

  9. Docker在CentOS下的安装

    工欲善其事,必先利其器. 在我们以后的Docker学习中,都推荐使用CentOS6.5作为学习平台,毕竟Docker的内核也是基于Linux的.本文主要分享笔者在CentOS下的安装Docker的过程 ...

  10. 阶段3 3.SpringMVC·_07.SSM整合案例_09.ssm整合之Spring整合MyBatis框架配置事务

    spring加入声明式的事物 配置事物 配置事物管理器 需要一个dataSource,引入上面的dataSource 配置事务通知 引入上面的transactionManager事物管理器 find开 ...