栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

使用python、pytest、allure、Excel实现批量执行接口

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用python、pytest、allure、Excel实现批量执行接口

 需要执行命令来进行下载对应的文件

        pip install requests

        pip install pytest

        pip install allure-pytest

1、我们需要在Excel文档中填写对应的接口和参数和提交方式,需要把接口文档放在data文件夹中

 2、创建一个文件用来读取Excel

 3、写入代码

from openpyxl import load_workbook
class UseExcel():
    def get_TestExcel(self):
        # 打开表
        workbook = load_workbook('../data/接口.xlsx')
        # 定位表单
        sheet = workbook['Sheet1']
        print(sheet.max_row)     #3 行
        print(sheet.max_column)  #3 列
        test_data = []#把所有行的数据放到列表中
        for i in range(2,sheet.max_row+1):
            sub_data = {}#把每行的数据放到字典中
            for j in range(1,sheet.max_column+1):
                sub_data[sheet.cell(1,j).value] = sheet.cell(i,j).value
            test_data.append(sub_data)#拼接每行单元格的数据
        return test_data
t = UseExcel()
f = t.get_TestExcel()
print(f)

 4、我们需要创建用来请求的接口的文件

        需要执行命令   pip install requests  下载对应的文件

import requests
from readdata.readdataxlsx import UseExcel
u = UseExcel()
lists = u.get_TestExcel()
litm = []
class Testxlsx:
    def testxlsx(self):
        for xlsx_i in lists:
            if xlsx_i.get('tijiao') == 'get':
                r = requests.get(url=xlsx_i['ual'],params=xlsx_i['sj'])
                litm.append(r.status_code)
            else:
                r = requests.post(url=xlsx_i['ual'],data=xlsx_i['sj'])
                litm.append(r.status_code)
        return litm
t = Testxlsx()
print(t.testxlsx())

5、创建我们的单元测试的文件,编写单元测试并且生成测试报告 

import pytest,os
from test_case.requxlsx import Testxlsx
t = Testxlsx()
lists = t.testxlsx()
class Testxls:
    def testxlsx(self):
        for xlsx_i in lists:
            assert xlsx_i == 200

if __name__ == '__main__':
    pytest.main(['--alluredir', 'report/result', 'test_xlsx.py'])
    split = 'allure ' + 'generate ' + './report/result ' + '-o ' + './report/html ' + '--clean'
    os.system(split)

6、执行成功会出现一个文件夹,我们点击index用浏览器进行访问,就可以看到我们的测试报告 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/316967.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号