python自动化测试生成HTML报告
自动化测试结果执行完毕后,需要对测试结果进行查看,今天就来讲一讲如何生成HTML报告
首先下载HTMLTestRunner.py文件,放在python安装目录的Lib文件夹下
https://pan.baidu.com/s/17vrgx81jgOEPaOWQ-ZUwAg 提取码:o6wf
1 #导入相应的包
2 import unittest
3 from HTMLTestRunner import HTMLTestRunner
4 from time import time, strftime, localtime
5 import os
6
7 if __name__ == '__main__':
8 # 定义需要执行哪个包下的文件,我要运行项目的文件夹是:当前目录下的父级目录下的“testcases”目录
9 dir_test = os.path.abspath(os.path.join(os.getcwd(), "..")) + "\\testcases"
10 # 使用unittest.TestLoader().discover方法,运行以case.py结尾的所有py文件
11 my_discover = unittest.TestLoader().discover(dir_test, "*case.py")
12 # 获取当前时间
13 now = strftime("%Y_%m_%d-%H-%M-%S", localtime(time()))
14 # 报告位置
15 filename = os.path.abspath(os.path.join(os.getcwd(), "..")) + "\\report\\" + now + "report.html"
16 with open(filename, "wb") as fp:
17 # 定义报告标题,描述,以及报告的详细情况
18 runner = HTMLTestRunner(stream=fp,
19 title="XXX项目接口自动化测试报告",
20 description="各接口测试用例执行情况", verbosity=2)
21 # 运行文件
22 runner.run(my_discover)
verbosity是一个选项,表示测试结果的信息复杂度,有0、1、2 三个值
0 (静默模式): 你只能获得总的测试用例数和总的结果 比如 总共10个 失败2 成功8
1 (默认模式): 非常类似静默模式 只是在每个成功的用例前面有个“.” 每个失败的用例前面有个 “F”
2 (详细模式):测试结果会显示每个测试用例的所有相关的信息
生成的报告结果: