生成 HTMLTestRunner 测试报告学习总结
HTMLTestRunner 的安装与使用
HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展。
在使用之前,我们需要先安装他。下载地址:https://pypi.python.org/pypi/HTMLTestRunner。放在C:\Python27\Lib该目录
接下来需要找到python的ide,敲入“import HTMLTestRunner”,没报错就代表我们导入HTMLTestRunner模块成功。如下图
实例代码:
1 import unittest 2 import HTMLTestRunner 3 class testadd(unittest.TestCase): 4 def setUp(self): 5 pass 6 def test_add1(self): 7 self.assertEqual(2+3+5,10) 8 def test_add2(self): 9 self.assertEqual(0+8+7,15) 10 def tearDown(self): 11 pass 12 def suite(): 13 suiteTest=unittest.TestSuite() 14 suiteTest.addTest(testadd("test_add1")) 15 suiteTest.addTest(testadd("test_add2")) 16 return suiteTest 17 if __name__=="__main__": 18 filepath='D:\\pyresult.html' 19 fp=file(filepath,'wb') 20 #定义测试报告的标题与描述 21 runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title=u'我是测试报告的标题',description=u'我是测试报告的描述') 22 runner.run(suite()) 23 fp.close()
运行结果:
详述下在学习过程中遇见的困惑
1.为什么我的代码运行成功了,但测试报告没有生成?
对于我这种刚学习的小白来说,这个问题真是很纠结。
因为我一直是快捷键运行代码,用unittest来启动,就没执行自己的main,执行的是unittest的main。详情请参照:http://blog.csdn.net/xie_0723/article/details/50825310
解决方法:Run-Run-运行代码。或者alt+shift+f10-运行代码
2.上面所说的2中运行方式有什么不同呢?
- 第一种,直接运行,执行的是unittest的man
- 第二种,就从自己的main入口进入执行的
- 更多详情请参照:http://www.ithao123.cn/content-6035445.html
3.我测试报告也正常生成了,但打开html的测试报告一片空白,这是为什么?
因为你没关闭文件。
解决方案:fp.close()