unittest单元测试框架执行完测试用例后,我们需要生成一个完整的测试报告,以便我们查看。
步骤如下:
1.在项目文件夹下新建testcase文件夹。(以我的为例:E:\python_work\project\testcase)
2在testcase文件夹下新建 test360_search.py 。(以我的为例:E:\python_work\project\testcase\ test360_search.py)
3.在testcase同级目录下新建文件runAllCases.py。(以我的为例:E:\python_work\project\runAllCases.py)
4.在testcase同级目录下新建文件夹reports。(以我的为例:E:\python_work\project\runAllCases.py)
5.在项目python安装目录下放置HTMLTestRunner.py文件(以我的为例:E:\python_work\project\reportsFiles\Python37\Lib\HTMLTestRunner.py)
6.直接运行runAllCases.py文件,即可在Test_report文件夹下看到测试报告。
runAllCases.py文件的代码如下:
import unittest
from HTMLTestRunner import HTMLTestRunner
import time
import os
if __name__ == "__main__":
#定义测试用例所在的路径
casesPath = "./testCase/"
#定义测试报告所在的路径
reportPath = "./reports/"
#定义测试报告的名称
reportName = time.strftime("%Y-%m-%d %H%M%S",time.localtime()) + '.html'
#定义测试报告所在的路径和名称
reportPathName = reportPath + reportName
#把测试用例组装到unittest的discover容器
discover = unittest.defaultTestLoader.discover(casesPath,"*.py")
#打开测试报告,并赋予读写权限
fp = open(reportPathName,"wb")
#把测试结果写进测试报告,并装载到HTHMLTestRunner模块
runer = HTMLTestRunner(stream=fp,title="360search自动化测试报告",description="用例执行情况")
#运行脚本
runer.run(discover)
#关闭打开的测试报告
fp.close()