操作步骤

1.下载HTMLTestRunner.py

2.把文件复制到python安装/lib位置下

Python HTMLTestRunner可视化报告实现过程解析3.

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

报告截图
Python HTMLTestRunner可视化报告实现过程解析

拓展方法

result = htmlroport.run(ts)
num1 = result.testsRun # 运行测试用例的总数
num2 = result.success_count # 运行测试用例成功的个数
num3 = result.failure_count # 运行测试用例失败的个数

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

标签:
Python,HTML,Test,Runner,可视化报告

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com