赞
踩
加粗样式
自动化测试运行完,需要了解测试结果,生成测试报告
需要用到第三方的模块HTMLTestRunner。
一:下载 HTMLTestRunner
下载路径:https://pypi.python.org/pypi/HTMLTestRunner ,下载后放到 Python的安装目录\Lib 该目录下。
步骤:
1、进入下载地址:https://pypi.python.org/pypi/HTMLTestRunner ,点击Download。
2、进入下载页,找到HTMLTestRunner.py
3、下载文件
点击 HTMLTestRunner.py 目标另存到python安装目录下的Lib目录下。
或者
在pycharm找到Lib目录,新建一个.py文件,把内容直接复制进去
二、修改HTMLTestRunner.py文件
如果你安装的是python2版本,那么不需要做下面这一步。
如果你是python3版本,所以需要我们自己修改 HTMLTestRunner.py 文件
修改内容如下:
第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))
其中,Python3中,已经没有StringIO了。取而代之的是io.StringIO。
三、实例代码
import os import time import unittest from HTMLTestRunner import HTMLTestRunner if __name__ == '__main__': # 被测试基本的路径 # test_dir = './' test_dir = os.path.join(os.getcwd(), "./") # pattern脚本名称匹配规则 discover = unittest.defaultTestLoader.discover(test_dir, pattern="test*.py") # 存放测试报告的文件夹 report_dir = './test_report' # 报告命名格式化(当前时间) now = time.strftime('%Y-%m-%d %H%M%S') # 报告文件完整路径 report_name = report_dir + '/' + now + 'result.html' # 打开文件再报告文件写入测试结果 with open(report_name, 'wb') as f: runner = HTMLTestRunner(stream=f, title='Test Report', description='Test Case Result') runner.run(discover)
四、测试报告生成
运行runtest.py,然后跑完所有的测试用例会自动生成.html的测试报告。
./test_report/2021-01-01 093204result.html
生成的目录,就是步骤三中写的当前目录下,test_report文件夹,
2021-01-01 093204result.html测试报告,需要用浏览器打开,如下图:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。