Python接口自动化-8-测试报告

时间:2022-04-23
本文章向大家介绍Python接口自动化-8-测试报告,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展。它生成易于使用的 HTML 测试报告

报告模板下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html

环境配置:

Windows:

将下载的文件放入python安装目录Lib 目录下 :如:D:Python34Lib

Linux:

通过 sys.path 可以查看本机 python 文件目录,以管理员身份将 HTMLTestRunner.py 文件拷贝到Python安装目录/site-packages/ 目录下

导入HTMLTestRunner模块

if __name__ == '__main__':中增加:

运行整个py文件

生成测试报告

示例代码:

# -*- coding:utf-8 -*-

importrequests

importunittest

importtime

importHTMLTestRunner

classTest(unittest.TestCase):

defsetUp(self):

self.url ="http://httpbin.org/post"

self.payload = {'key1':'value1','key2':'value2'}

print('----开始执行用例------')

deftearDown(self):

print('----用例执行结束------')

deftest_case(self):

r = requests.post(self.url,data=self.payload)

t = r.json()

self.assertEqual(t['url'],'http://httpbin.org/post')#判断返回的数据中url是否准确

deftest_case2(self):

r = requests.post(self.url,data=self.payload)

self.assertEqual(r.status_code,201)#判断返回的状态码是200

if__name__ =='__main__':

# unittest.main(verbosity=2)

suite = unittest.TestSuite()#定义一个单元测试容器

suite.addTest(Test("test_case"))#将测试用例加入到测试容器中

suite.addTest(Test("test_case2"))

timestr = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))

filename ="D:\appium\result_"+ timestr +".html"#定义个报告存放路径,支持相对路径。

print(filename)

fp =open(filename,'wb')

runner = HTMLTestRunner.HTMLTestRunner(

stream=fp,

title='接口测试报告',

description='用例执行情况'

)#使用HTMLTestRunner配置参数,输出报告路径、报告标题、描述

runner.run(suite)#自动进行测试

fp.close()#测试报告关闭

注:Python2和Python3使用的HTMLTestRunner模板不一致

如有疑问,欢迎留言交流...