自动化测试报告的生成

与世无争的帅哥 提交于 2019-12-06 16:01:25

准备操作

首先需要在网上下载HTMLTestRunner.py,下载完成后将该文件放在Python根目录下的Lib目录中,例如C:\Python27\Lib

代码

# 导入HTMLTestRunner
from HTMLTestRunner import HTMLTestRunner
import unittest # 用于识别测试用例
import time # 用于生成测试报告名称的后缀
# 识别得到要执行的测试用例
case_path = '...'   # 测试用例文件所在的父目录
# test*.py代表测试用例文件都是以test开头.py结尾,文件名字必须符合变量命名规范
case_list = unittest.defaultTestLoader.discover(case_path,pattern='test*.py')
# 用w模式打开自动化测试报告文件
report_file = '...' # 测试报告的文件路径,文件可以不存在但父目录路径必须存在,报告文件是.html文件
with open(report_file, 'w') as f:
   	runner = HTMLTestRunner(f,title='报告标题',description='报告描述')
   	runner.run(case_list)   # 最后执行需要指定执行的测试用例列表

执行结果说明

  • . 用例执行成功
  • F 用例执行失败(原因是断言没有通过)
  • E 用例执行错误(原因是用例代码错误)
  • S 用例被跳过

如何保证测试报告文件不会覆盖

可以通过time.strftime(),例如:

report_file = 'report_%s.html' % time.strftime('%Y%m%d%H%M%S')
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!