Python Web 自动化学习之 HTMLTestRunner
HTMLTestRunner 可以生成简单的网页报告。现在较新的版本可以直接通过setting下载支持python3的HTMLTestRunner 包,不需要再去额外的修改文件。
在使用HTMLTestRunner生成测试报告过程中。遇到了几个问题如下:
【一】TypeError: 'Module' object is not callable
这个报错原因是直接调用HTMLTestRunner方法失败,应该通过类再去调用方法。
#runner = HTMLTestRunner(stream=report,title=title,description='描述') 原代码
runner = HTMLTestRunner.HTMLTestRunner(stream=report,title=title,description='描述') #修改后
【二】报错TypeError: a bytes-like object is required, not 'str'
【原代码】
with open(report_file,'wb') as report: title = u'测试报告' test_class = loader.loadTestsFromTestCase(ExampleTestCast2) Test_suit.addTest(test_class) runner = HTMLTestRunner.HTMLTestRunner(stream=report,title=title,description='描述') runner.run(Test_suit)
wb中的w表示写入模式,b是文件模式,所以在我的这段断码中,写入文件模式是 wb,运行时就报错了。把wb 修改为w就可以了。
【三】生成报告中,标题和说明,中文显示乱码
修改代码:with open(report_file,'w',encoding='utf-8') as report:
百度的解决方法还有一个,是写入文件模式为wb,但是这样就会有问题二,需要需要HTMLTestRunner.py 文件。没尝试过。