接口自动化之测试用例执行并生成对应HTML测试报告

1.测试用例执行

存放在case文件夹下
代码示例:

#导包
import unittest
#from tools.read_log import Log
from apitest_pycharm.config.read_log_setting import MyLog
'''
# 设置程序所在目录
import sys
sys.path.append("D:\\自动化测试\\apitest\\api")
'''
from apitest_pycharm.api.api_1201 import Api_1201
from parameterized import parameterized
# sys.path.append("D:\\自动化测试\\apitest\\tools")
from apitest_pycharm.tools.read_json import ReadJson

# 读取数据函数
def get_data():
    datas = ReadJson("1201.json").read_json()
    # 新建空列表,添加json数据
    arrs = []
    # 遍历获取所有的values
    for data in datas.values():
        arrs.append((data.get("url"),
                     data.get("siteID"),
                     data.get("expect_result"),
                     data.get("status_code")))
    return arrs
#调用日志模块
#log=Log().get_Logger #使用封装日志
log=MyLog().mylogger #使用配置文件封装
class Test1201(unittest.TestCase):
    # 新建测试方法
    @parameterized.expand(get_data()) #循环遍历单元测试方法
    def test_1201(self, url, siteID, expect_result, status_code):
        # 调用方法
        s = Api_1201().api_post_1201(url, siteID, expect_result, status_code)
        print("查看响应结果:", s.json())
        #打印日志
        log.debug(s.json())
        
if __name__ == "__main__":
    unittest.main()

2.生成对应HTML测试报告

存放在tool文件夹中,报告存放在report
代码示例:

import unittest
import time
from HTMLTestRunner import HTMLTestRunner

#组装测试套件
#suite=unittest.defaultTestLoader.discover("./case",pattern="test*.py")
suite=unittest.defaultTestLoader.discover("D:\\自动化测试\\apitest_pycharm\\case",pattern="test_1201.py")

#指定报告存放路径及名称
#file_path="./report/{}.html".format(time.strftime("%Y-%m-%d %H-%M-%S"))
file_path='D:\\自动化测试\\apitest_pycharm\\report\\{}.html'.format(time.strftime("%Y-%m-%d %H-%M-%S"))
#定义测试报告,stream指定测试报告文件,title定义标题,description='用例执行情况:'
#runner=HTMLTestRunner(stream=file_path,title='售卖系统测试报告',description='用例执行情况:')

#运行测试套件并生成测试报告
'''with open(file_path,'wb') as f:
    HTMLTestRunner(stream=f).run(suite)'''
with open(file_path,'wb') as f:
    HTMLTestRunner(stream=f,title='售卖系统测试报告',description='用例执行情况:').run(suite)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值