操作猛如虎,竟让阿里面试官惊呆!上一个接口返回值作为下一个接口参数的三种方式

在接口测试中,接口之间存在着相互依赖的关系,有时候一个接口的返回值需要作为下一个接口的参数使用。在这种情况下,我们需要使用设计合理的方式来管理接口间的依赖关系。本文将介绍三种常见的将上一个接口的返回值作为下一个接口的参数的方式,并使用Python代码进行示例说明。

【视频教程:操作猛如虎,竟让阿里面试官惊呆!上一个接口返回值作为下一个接口参数的三种方式_哔哩哔哩_bilibili

  1. 通过变量传递

将上一个接口的返回值保存在变量中,并在下一个接口的请求中引用该变量。这种方式简单易用,并且适用于参数较少的情况。

import requests

# 调用接口1,并将返回值保存在变量中
url1 = 'http://example.com/api1'
res1 = requests.get(url1)
value1 = res1.json()['value']

# 调用接口2,并引用变量作为参数
url2 = 'http://example.com/api2'
params2 = {'param1': value1}
res2 = requests.get(url2, params=params2)
  1. 通过数据驱动

将多个接口的请求和返回值保存在数据文件中,使用数据驱动的方式执行测试。这种方式适用于参数较多的情况,可以灵活控制测试数据和测试用例。以下是Python代码示例:

import requests
import xlrd

# 读取数据文件中的测试数据和测试用例
data = xlrd.open_workbook('testdata.xlsx')
sheet1 = data.sheets()[0]
for i in range(1, sheet1.nrows):
    url1 = sheet1.cell_value(i, 0)
    res1 = requests.get(url1)
    value1 = res1.json()['value']
    url2 = sheet1.cell_value(i, 1)
    params2 = {'param1': value1}
    res2 = requests.get(url2, params=params2)
    assert res2.status_code == 200
  1. 通过公共方法传递

使用类或函数封装接口请求和返回值处理的过程,将上一个接口的返回值作为参数传递给下一个接口。这种方式可以对接口的请求和返回值进行统一管理,并且可以实现接口组合和流程控制。以下是Python代码示例:

import requests

class ApiBase:
    def request(self, url, params=None):
        res = requests.get(url, params=params)
        return res.json()
    
class Api1(ApiBase):
    def call(self):
        url = 'http://example.com/api1'
        res = self.request(url)
        return res['value']
    
class Api2(ApiBase):
    def call(self, param):
        url = 'http://example.com/api2'
        params = {'param1': param}
        res = self.request(url, params=params)
        return res['result']

a1 = Api1()
a2 = Api2()
value1 = a1.call()
result2 = a2.call(value1)

以上就是将上一个接口的返回值作为下一个接口的参数的三种常见方式,并使用Python代码进行了详细的示例说明。根据实际情况选择合适的方式,可以提高测试效率和测试质量。

 总结:下方是作者从功能测试到自动化测试拿到年薪34w,花费三年打造的软件测试到测试开发全职业生涯资料包,有需要的话可以点击文章末尾的小卡片备注000领取哈

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值