接口自动化测试 unittest+request+excel(三)

匿名 (未验证) 提交于 2019-12-03 00:11:01

自动生成接口自动化报告

前期要导入HTMLTestrunner模块,如果没有HTMLTestrunner模块的话,可以百度搜索下载下来。

 

 

#!/usr/bin/env python3 # -*-coding:utf-8-*- # __author__: hunter  import time from HTMLTestRunner import HTMLTestRunner      # 导入HTMLTestRunner模块 import unittest  # 把discover加载测试用例的过程封装到一个函数中 def allCase():     case_dir = 'D:/hunter_/interfaceTest/interface/case'  # 定义测试用例所在路径     suite = unittest.TestSuite()  # 定义一个测试套件     discover = unittest.defaultTestLoader.discover(case_dir,                                                    pattern='test_*.py',                                                    top_level_dir=None)      """     1、case_dir即测试用例所在目录     2、patten='test_*.py' : 表示用例文件名的匹配规则,“*”表示任意多个字符,这里表示匹配所有以test_开头的文件     3、top_level_dir=None : 测试模块的顶层目录。如果没顶层目录(也就是说测试用例不是放在多级目录中),默认为None     """      # discover方法筛选出来的用例,循环添加到测试套件中     for test_suit in discover:         for test_case in test_suit:             suite.addTests(test_case)     print(suite)     '''直接加在discover'''     return suite  if __name__ == '__main__':      allsuit = allCase()    # 实例化     now = time.strftime("%Y-%m-%d %H-%M-%S")    # 显示当时的时间     filename = 'D:/hunter_/interfaceTest/interface/report/' + now + '_result.html'    # 测试报告的路径+当时的时间+测试报告名称     fp = open(filename, 'wb')                                    # 打开文件,创建测试报告HTML文件,此时还是空文件;w是写入模式,b代表的是二进制模式(pickle储存模式默认是二进制模式)     runner = HTMLTestRunner(stream=fp,                             title='接口测试报告',                             description='Implementation Example with')            # 初始化一个HTMLTestRunner实力对象,用来生成报告
runner.run(allsuit)      # 运行测试套件

生成的测试报告

 

 代码能力优秀的话,可以对HTMLTestrunner模块进行优化修改,可以让测试报告更加完美;同时也可以增加错误截图的功能

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!