Python 中 使用 HTMLTestRunner 模块生成测试报告

   使用 HTMLTestRunner 模块可以生成测试报告,但是系统自带的报告不详细,不好看,所以找了一份详细的报告 HTMLTestRunNer 模板,直接导入就能使用

  两种方法生成HTML报告,都是一个意思,用那种都一样

import unittest
from datetime import datetime                       # 获取时间模块

from test.HTMLTestRunnerNew import HTMLTestRunner   # 导入报告模板

# 创建自动识别套件,加载测试用例
one_suite = unittest.defaultTestLoader.discover(".")  # .代表获取当前py文件所在的路径的测试用例,也可以使用绝对路径

# 指定HTML报告生成的路径及文件名+报告名中显示具体时间
report_full_path = "./reports/" + "report_" + datetime.strftime(datetime.now(), "%Y-%m-%d %H-%M-%S") + ".html"


# # 方法一
# # 打开的文件对象传给save_to_file
# save_to_file = open(report_full_path, mode='wb')
# # 读写文件
# one_runner = HTMLTestRunner(stream=save_to_file,
#                             title="某项目自动化测试",
#                             verbosity=2,
#                             description="对系统流程进行回归测试",
#                             tester="守护往昔")
# one_runner.run(one_suite)       # 使用加载器run方法来运行套件
# save_to_file.close()            # 关闭文件


# 方式二:推荐使用
# 使用with 上下文管理,open打开文件,mode='wb':以二进制写入 as 接受返回的对象
with open(report_full_path, mode='wb') as save_to_file:
    # HTMLTestRunner:相当于创建HTML运行器a
    # stream默认输入到控制台,指定输出到文件对象stream=save_to_file
    # title=报告的标题
    # verbosity=是为了指定报告的详细程度, 0, 1, 2=最详细
    # description=报告的描述信息
    # tester = 测试人员的名字
    # runner 创建执行器对象
    one_runner = HTMLTestRunner(stream=save_to_file,
                                title="某项目自动化测试",
                                verbosity=2,
                                description="对系统流程进行回归测试",
                                tester="守护往昔")
    one_runner.run(one_suite)

  报告名称会显示带有具体时间的报告:report_2020-01-07 12-29-47.html

  使用浏览器打开报告显示样式:

   百度网盘获取报告模板:

链接:https://pan.baidu.com/s/1m-vInhEfSzTaTnUsUCEVJg
提取码:088p

 

2、txt 报告

  

 

3、BeautifulReport模块:https://pypi.org/project/BeautifulReport/

  

 

posted @ 2020-01-07 12:48  守护往昔  阅读(919)  评论(0编辑  收藏  举报