Python3.6 + Selenium2.48.0 + unittest框架可以自动批量执行测试用例,但批量执行完用例后,生成的测试报告是文本形式的,不够直观,为了更好的展示测试报告,最好是生成HTML格式的。unittest里面是不能生成html格式报告的,需要导入一个第三方的模块:HTMLTestRunner。才能自动生成html格式的测试报告。下面我们介绍如何简单的两步生成html格式测试报告 Sep1.导入HTMLTestRunner: 1. 下载HTMLTestRunner.py文件,即使我们需要导入的第三方模块。 2. 手动把HTMLTestRunner.py拖入python解释器安装目录的Lib目录下。 3. 代码中导入模块,from HTMLTestRunner import HTMLTestRunner。 Sep2.写脚本批量执行测试用例并生成测试报告: import time
from HTMLTestRunner import HTMLTestRunner
import unittest
# 加载当前目录下iweb开头的.py文件
discover = unittest.defaultTestLoader.discover("./", pattern ="test*.py")
if __name__ == '__main__':
file_dir = "./"
# 定义报告名称格式(时间戳)
nowtime =time.strftime("%Y-%m-%d %H_%M_%S")
# 报告完整路径和名称
file_name =file_dir+nowtime+"Report.html"
# 实例化HTMLTestRunenr对象,传入报告文件流f
with open(file_name,"wb")as f:
runner=HTMLTestRunner(stream= f, title = "iweb_shop项目Web自动化测试报告", description = "测试用例共计4条" )
runner.run(discover)
1. 每个test_*.py文件就是测试用例。 2. 网页报告.py文件是执行测试及生成报告脚本。 3. .html即是生成的报告。
报告
|