一、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()
生成的測試報告如下: