9-Unittest+HTMLTestRunner不能生成报告解决方法

时间:2023-03-09 00:30:50
9-Unittest+HTMLTestRunner不能生成报告解决方法

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框架运行的

9-Unittest+HTMLTestRunner不能生成报告解决方法

3、解决方案

只要不以unittest框架方式运行就可解决不能生成报告的问题。可自己新增一个不以unittest框架方式运行的环境。

9-Unittest+HTMLTestRunner不能生成报告解决方法

1)如下点击edit configurations-->选中python-->点击+

9-Unittest+HTMLTestRunner不能生成报告解决方法

2)点击python

9-Unittest+HTMLTestRunner不能生成报告解决方法

3)填写环境名称和脚本路径

9-Unittest+HTMLTestRunner不能生成报告解决方法

4)选择步骤三种新增的环境,运行脚本,即可生成报告

9-Unittest+HTMLTestRunner不能生成报告解决方法