下载地址HTMLTestRunner.py文件:

http://tungwaiyip.info/software/HTMLTestRunner.html

下载的适合python2,如果python3要修改一些内容

首先吧HTMLTestRunner文件添加到环境变量里,可以直接放到python的Lib目录下

HTMLTestRunner是python标准库unittest单元测试框架的一个扩展,用于生成HTML测试报告

生成HTML测试报告

#coding:utf-8import unittest, HTMLTestRunnerclass Testcase(unittest.TestCase): # 测试用例类 # 具体的测试用例,一定要以test开头 def test1(self): self.assertEqual(1, 1) def test2(self): self.assertEqual(2, 2)if __name__ == "__main__": # 构造测试集 suite = unittest.TestSuite() suite.addTest(unittest.makeSuite(Testcase)) # 执行该测试类所有用例 # 定义报告的存放路径,以二进制写的形式打开文件 f = open('test.html', 'wb') # 定义测试报告,stream:报告存放路径,title:报告标题,description:描述 runner = HTMLTestRunner.HTMLTestRunner(stream=f, title=u'测试用例标题', description=u'描述') runner.run(suite) # 运行测试用例 f.close() # 关闭文件

返回结果(测试报告详情):

web测试的方法(自动化测试之HTML测试报告)(1)

--stream :存放报告写入文件的存入区域

--title :测试报告的主题

--description :测试报告的描述

报告用例类和用例方法加备注

为了生成带有中文描述的测试用例类和测试用例

在用例类和用例方法下,通过’’’ ‘’’或””” “””来添加备注

#coding:utf-8import unittest, HTMLTestRunnerclass Testcase(unittest.TestCase): # 测试用例类 u'''类名后加备注''' def test1(self): u'''用例后面加备注1''' self.assertEqual(1, 1) def test2(self): u'''用例后面加备注2''' self.assertEqual(2, 2)if __name__ == "__main__": # 构造测试集 suite = unittest.TestSuite() suite.addTest(unittest.makeSuite(Testcase)) # 定义报告的存放路径,以二进制写的形式打开文件 f = open('test.html', 'wb') # 定义测试报告,stream:报告存放路径,title:报告标题,description:描述 runner = HTMLTestRunner.HTMLTestRunner(stream=f, title=u'测试用例标题', description=u'描述') runner.run(suite) # 运行测试用例 f.close() # 关闭文件

返回结果:

web测试的方法(自动化测试之HTML测试报告)(2)

测试报告文件名

#coding:utf-8import unittest, HTMLTestRunner, timefrom unittest.loader import makeSuiteclass Testcase(unittest.TestCase): # 测试用例类 # 具体的测试用例,一定要以test开头 def test1(self): self.assertEqual(1, 1) def test2(self): self.assertEqual(2, 2)if __name__ == "__main__": # 构造测试集 suite = unittest.TestSuite() suite.addTest(makeSuite(Testcase)) # 执行该测试类所有用例 # 定义报告的存放路径,以二进制写的形式打开文件 now = time.strftime("%y-%m-%d %H_%M_%S") f = open('./' now 'test.html', 'wb') # 定义测试报告,stream:报告存放路径,title:报告标题,description:描述 runner = HTMLTestRunner.HTMLTestRunner(stream=f, title=u'测试用例标题', description=u'描述') runner.run(suite) # 运行测试用例 f.close() # 关闭文件

返回结果:

web测试的方法(自动化测试之HTML测试报告)(3)

测试报告乱码问题

web测试的方法(自动化测试之HTML测试报告)(4)

将红框里的内容注释掉改成uo = o.decode('utf-8')

web测试的方法(自动化测试之HTML测试报告)(5)

,