操作步骤
- 1.,下载HTMLTestRunner.py
- 2.把文件复制到python安装/lib位置下
- 3.导入:import HTMLTestRunner import unittest
- 4.mian执行:
- 1.实例化:ts = unittest.TestSuite()
- 2.按类加载全部testxxx测试用例:ts.addTest(unittest.TestLoader().loadTestsFromTestCase(类名))
按函数加载testxxx测试用例:ts.addTest(类名(‘函数名’)) - 3.打开文件位置,如果没有则新建一个文件:filename = open(‘C:\xxx.html’,‘wb’)
- 4.定义报告属性:htmlroport = HTMLTestRunner.HTMLTestRunner(stream=filename,title=‘标题XXX报告’,description=‘XXX报告XX描述’,tester=‘测试人员XXX’)
- 5.加载执行用例生成报告:htmlroport.run(ts)
举例说明
#!/usr/bin/python3
# encoding:utf-8
'''
Created on 2019年9月30日
@author: EDZ
'''
import unittest
import HTMLTestRunner
import os
import time
class HtmlReport(unittest.TestCase):
def test_1(self):
print('test_1错误')
self.assertEqual(1, 2,'说明错误')
def test_2(self):
print('test_2正确')
self.assertEqual(1, 1)
def test_3(self):
print('test_3错误')
self.assertEqual(2, 3)
if __name__=='__main__':
now = time.strftime("%Y-%m-%d %H%M%S", time.localtime(time.time()))
localpath = os.getcwd()
print('本文件目录位置:'+localpath)
filepath = os.path.join(localpath,'Report',now +'.html')
print('报告存放路径 :'+filepath)
ts = unittest.TestSuite()#实例化
#按类加载全部testxxx测试用例
ts.addTest(unittest.TestLoader().loadTestsFromTestCase(HtmlReport))
#按函数加载testxxx测试用例
#ts.addTest(HtmlReport('test_1'))
#打开文件位置,如果没有则新建一个文件
filename = open(filepath,'wb')
htmlroport = HTMLTestRunner.HTMLTestRunner(stream=filename,title='标题XXX报告',description='XXX报告XX描述',tester='测试人员XXX')
htmlroport.run(ts)
运行结果
本文件目录位置:C:\Users\EDZ\eclipse-workspace\pythonTest
报告存放路径 :C:\Users\EDZ\eclipse-workspace\pythonTest\Report\2019-09-30 >160852.html
F.F
Time Elapsed: 0:00:00.001000
报告截图
拓展方法
result = htmlroport.run(ts)
num1 = result.testsRun # 运行测试用例的总数
num2 = result.success_count # 运行测试用例成功的个数
num3 = result.failure_count # 运行测试用例失败的个数