1、引言
在接口自动化测试领域,接口间的关联是非常重要的一环。当某个接口的响应数据被下游接口作为输入参数时,我们就需要在测试过程中实现接口之间的数据关联。本文将深入探讨如何在Python接口自动化测试中实现接口关联。
2、问题背景
在实际的业务场景中,常见的接口关联形式如登录接口返回的token用于后续接口的身份验证,或者是列表接口返回的数据ID用于详情接口的查询等。因此,在编写自动化测试脚本时,我们必须妥善处理这些关联数据,确保测试的连贯性和准确性。
例如,我想请求这个接口,那么在请求时必须要带token才能请求正常,那么问题来了,我们要怎么去拿到token呢?
不带token请求时
3、解决方法
一般在请求登录接口时,接口返回结果中有token参数,我们只要把这个token提取并储存起来拿给后面的接口调用就行,下面就简单来介绍两种方法来实现接口关联。
介绍之前大家可以看下获取人员接口的代码和测试数据
py文件
@pytest.mark.parametrize('case_info', YamlUtil().read_testcases_yaml('get_user_list.yml'))
def test_get_user_list(self, case_info):
print('case_info:', case_info)
url = case_info['request']['url']
method = case_info['request']['method']
headers = case_info['request']['headers']
print('headers:', headers)
data = case_info['request']['data']
# requests.request请求
res = RequestsUtil().send_request(url=url, method=method, headers=headers, data=data)
# 获取返回结果数据,json格式接收
response = res.json()
# 打印返回结果到控制台
print('返回结果:', response)
# 获取接口返回code
res_code = response['code']
assert re