一,报错信息
E:\pythonProject\study\venv\Scripts\python.exe E:/pythonProject/case/test_login.py
...Traceback (most recent call last):
File "E:\pythonProject\case\test_login.py", line 71, in <module>
runner.run(suit) # 调用HTMLTestRunner类下面的run()方法运行用例套件
File "E:\pythonProject\study\venv\lib\site-packages\HTMLTestRunner\HTMLTestRunner.py", line 631, in run
self.generateReport(test, result)
File "E:\pythonProject\study\venv\lib\site-packages\HTMLTestRunner\HTMLTestRunner.py", line 691, in generateReport
self.stream.write(output)
TypeError: a bytes-like object is required, not 'str'
二,源码
# 测试报告的路径及测试报告的名称
dir = "E:/pythonProject/login_report.html"
# "wb"新建或打开一个二进制文件,写入执行完的数据
filename = open(dir, "wb")
# 调用HTMLTestRunner类定义测试报告内容
runner = HTMLTestRunner.HTMLTestRunner(stream=filename, title="Testcase Report", description="testcases")
runner.run(suit) # 调用HTMLTestRunner类下面的run()方法运行用例套件
filename.close() # 关闭测试报告文件
三,解决方法
# 测试报告的路径及测试报告的名称
dir = "E:/pythonProject/login_report.html"
# "w"新建或打开一个文件,并写入执行完的数据
filename = open(dir, "w")
# 调用HTMLTestRunner类定义测试报告内容
runner = HTMLTestRunner.HTMLTestRunner(stream=filename, title="Testcase Report", description="testcases")
runner.run(suit) # 调用HTMLTestRunner类下面的run()方法运行用例套件
filename.close() # 关闭测试报告文件