1、问题现象
在使用HTMLTestRunner生成测试报告时,出现程序运行不报错,但不能生成报告的情况。
刚开始找了很久没发现问题,后来加上打印信息,发现根本没执行生成报告这部分代码。最后网上找到原因:pycharm 在运行测试用例的时候 默认是以unittest 框架来运行的,所以不能生成测试报告。
if __name__ == ‘__main__‘: print ‘开始执行main‘ # 创建文件,用来存放测试报告 filepath = ‘..\htmlreport\htmlreport.html‘ # 以读写的方式打开文件 fp = file(filepath,‘wb‘) # 创建测试套 suit = unittest.TestSuite() # 向测试套里添加case suit.addTest(TestMethod(‘test_01‘)) suit.addTest(TestMethod(‘test_02‘)) # 定义HTMLTestRunner执行相关参数 runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title=‘This is first test‘) # 执行case runner.run(suit) fp.close() print ‘main执行结束‘
2、如何判断是否以unittest框架运行?
如下,只要运行环境是unittest in ...的,就都是以unittest框架运行的
3、解决方案
只要不以unittest框架方式运行就可解决不能生成报告的问题。可自己新增一个不以unittest框架方式运行的环境。
1)如下点击edit configurations-->选中python-->点击+
2)点击python
3)填写环境名称和脚本路径
4)选择步骤三种新增的环境,运行脚本,即可生成报告
原文地址:https://www.cnblogs.com/santiandayu/p/10004179.html
时间: 2024-10-29 02:50:02