python htmltestrunner报告_Python3和HTMLTestRunner生成html测试报告

1、测试环境:

Python3.5+unittest+HTMLTestRunner

2、下载HTMLTestRunner.py文件

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

右键单击保存至本地,放在Python的安装目录Lib文件夹下(我本地放在本目录下:D:\setup\Python35\Lib)

3、由于下载的HTMLTestRunner.py文件是基于Python2的,若适用于Python3则进行如下修改:

第94行,将import StringIO修改成import io

第539行,将self.outputBuffer = StringIO.StringIO()修改成self.outputBuffer = io.StringIO()

第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

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

4、以下3个py文件利用unittest、HTMLTestRunner生成html测试报告

test.py 文件

1 classTest():2 #初始化函数

3 def __init__(self,a,b):4 self.a =a5 self.b =b6

7 #两个数相加

8 defadd(self):9 x = self.a+self.b10 returnx11

12 #两个数相减

13 defdele(self):14 y = self.a-self.b15 return y

add_dele.py文件

1 #coding=utf-8

2 from test importTest3 importunittest4

5 classTest_test(unittest.TestCase):6 #下面三引号对类的注释会显示在报告的表格中

7 '''数字计算'''

8 deftest_shuzi(self):9 #下面三引号对方法的注释会显示在报告的表格中

10 '''两个数字相加以及两个数字相减'''

11 #对test文件中的Test类初始化

12 shuzi = Test(7, 3)13 self.assertEqual(shuzi.add(),10)14 self.assertEqual(shuzi.dele(),4)15 deftest_liangmethod(self):16 '''两数字相加的2倍 加上 两个数字相减的2倍'''

17 #对test文件中的Test类初始化

18 liangshuzi = Test(6,5)19 t = liangshuzi.add()*2 + liangshuzi.dele()*2

20 self.assertEqual(t,24)

test_add_dele.py文件

1 #coding=utf-8

2 from HTMLTestRunner importHTMLTestRunner3 importunittest4 importadd_dele5 importtime6 importos7

8 #构建测试集

9 suit =unittest.TestSuite()10 #测试集加入add_dele文件中被调用的方法。格式suit.addTest(文件名.类名("方法名"))

11 suit.addTest(add_dele.Test_test("test_shuzi"))12 suit.addTest(add_dele.Test_test("test_liangmethod"))13

14 #定义存放测试报告的路径及文件名

15 #我定义的路径是:当前路径+存放报告的专有目录Report+文件名(文件名是当前时间+report.html)

16 curent_dirc=os.path.dirname(os.path.realpath(__file__))17 report_dirc = "\Report"

18 now = time.strftime("%Y%m%d-%H%M%S")19 report_name = curent_dirc+report_dirc+"\\"+now+"report.html"

20 fp = open(report_name,"wb")21 runner = HTMLTestRunner(stream=fp,22 title="测试一下报告生成",23 description="用两个数字的相加减来练习")24 runner.run(suit)25 fp.close()

5、文件及html报告架构:

1018031-20190919145643734-651922594.png

6、生成的html报告样式:

1018031-20190919150146583-1936881209.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值