一、HTMLTestRunner类说明
原版的HTMLTestRunner.py文件因为多次不更新,所以并不支持python3,所以需要对HTMLTestRunner文件进行修改,,这里使用的是《web接口开发与自动化测试》一书中作者修改后的文件,guhub地址:https://github.com/SeldomQA/HTMLTestRunner;
with(open('./result.html', 'wb')) as fp:
runner = HTMLTestRunner(
stream=fp,
title='<project name>test report',
description='describe: ... '
)
runner.run(suit, rerun=0, save_last_run=False)
HTMLTestRunner类说明:
- stream:文件输出的路径;
- title:报告的标题;
- description:报告的描述;
以上可查看HTMLTestRunner类的init文件;
run()方法的说明:
- suite:测试套件;
- rerun:重跑次数;
- save_last_run :是否保存最后一个结果
二、生成html报告
import time,sys
sys.path.append('./interface')
sys.path.append('./db_fixture')
from HTMLTestRunner import HTMLTestRunner
import unittest
from db_fixture import test_data
#指定测试用例为当前文件夹下的interface目录
test_dir = './interface'
discover = unittest.defaultTestLoader.discover(test_dir,pattern='*_test.py')
if __name__ == '__main__':
test_data.init_data()
now = time.strftime("%Y-%m-%d %H_%M_%S")
filename = './report/'+ now + '_result.html'
fp = open(filename,'wb')
runner = HTMLTestRunner(stream=fp,title='Guest System Interface Test Report')
runner.run(discover)
fp.close()
生成的测试报告如下: