首页 > 代码库 > python_单元测试unittest测试报告HTMLTestRunner

python_单元测试unittest测试报告HTMLTestRunner

前提:导入HTMLTestRunner模块--将HTMLTestRunner.py放入python环境变量目录(通过sys.path查看)

步骤1. 创建Testsuite对象 -- unittest.test()

步骤2. 将用例加入到Testsuite -- suite.addTest(GetUserTest(‘test_get_user‘))

步骤3. 创建文件保存测试结果,设置报告内容 -- 注意必须是二进制wb

步骤4. 以报告模版运行testSuite

注意:不能用pycharm的unittest模式运行,否则无法生成报告。 直接运行代码。

import unittest,requests,HTMLTestRunner

class GetUserTest(unittest.TestCase):

def tearDown(self):
print(‘tear down...‘)
def setUp(self):
print(‘tear...up‘)
def test_get_user(self):
res = requests.get(‘http://api.map.baidu.com/telematics/v3/weather?location=%E5%98%89%E5%85%B4&output=json&ak=5slgyqGDENN7Sy7pw29IUvrZ‘).json()
status = res.get(‘status‘)
s_status = 201
self.assertEquals(s_status,status)
def test_get_user2(self):
res = requests.get(‘http://api.map.baidu.com/telematics/v3/weather?location=%E5%98%89%E5%85%B4&output=json&ak=5slgyqGDENN7Sy7pw29IUvrZ‘).json()
message = res.get(‘message‘)
s_message = ‘APP‘
self.assertIn(s_message,message)

if __name__==‘__main__‘:
suite = unittest.TestSuite()
suite.addTest(GetUserTest(‘test_get_user‘))
suite.addTest(GetUserTest(‘test_get_user2‘))
fr = open(‘res.html‘,‘wb‘)
report = HTMLTestRunner.HTMLTestRunner(stream=fr,title=‘测试报告‘,description=‘测试报告详情‘)
report.run(suite)

python_单元测试unittest测试报告HTMLTestRunner