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

这篇博客介绍了如何利用Python进行接口测试。首先,通过pip安装必要的库如requests和pytest。接着,从Excel文件中读取接口信息,并创建一个类来获取数据。然后,创建一个请求接口的类,根据GET或POST方法发送请求并记录状态码。最后,编写单元测试,生成测试报告,使用pytest和Allure框架,确保测试结果可视化。
摘要由CSDN通过智能技术生成

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

        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用浏览器进行访问,就可以看到我们的测试报告 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值