生成测试报告时,用当前时间戳命名,可以轻松的生成每次的测试报告,不至于测试报告被覆盖
PS: 刚开始编码好之后,执行时发现文件的链接有问题,原因在于,日期在格式化时时间中间不能用“:”来连接,改成下滑线后,可以完美执行了,原因为下图:
import unittest
from API_test.crm import CrmTest
import HTMLTestRunner
import time
def suite():
login_testcase = unittest.makeSuite(CrmTest, "test")
# login_testcase.addTest(CrmTest("test_search"))
return login_testcase
if __name__ == '__main__':
# 获取当前时间戳并整理格式
# now = time.strftime('%Y-%m-%d %H:%M:%S') 这种方式会报上面截图的错误!
now = time.strftime('%Y-%m-%d %H_%M_%S')
# 文件的命令以及打开路径
filename = r'e:\PYTHON_Project\retry\API_test\test_report\\' + now + 'result.html'
# 用with的方法打开文件,不用调用close函数,该方式会在合适的时间自动关闭文件
with open(filename, 'wb') as fr:
runner = HTMLTestRunner.HTMLTestRunner(stream=fr, title="测试报告", description="详情")
runner.run(suite())