接口之间会有参数依赖
,本节主讲述引入extract.yaml
文件,以及对extract.yaml操作
在第1节中,封装了requests,发现接口直接使用了token传参。以后的接口中还会有其他的字段,
A接口需要同时依赖B、C接口的响应数据作为参数。处理方式是什么?
同一个py文件下,处理方式,如第1节:
B、C 发送接口获取接口响应值,然后存入类方法,在A接口请求体中调用使用
思考,多个py文件中,不同文件中接口互相依赖关联,如何处理
1、新建extract.yaml文件,该文件只用于存储接口关联的数据
2、新建config.py文件,其中有三个操作extract.yaml文件方法,写入
、读取
、清空
write_extract_yaml()
:写入到extract.yaml文件,写入的数据必须为字典类型
read_extract_yaml()
: 读取extract.yaml文件,字典就通过键读取值
clear_extract_yaml()
:清除extract.yaml文件,一般结合conftest.py文件使用,在运行接口框架之间清除extract.yaml文件
testcase = read_extract_yaml('testcase')
testcase = read_extract_yaml('demo', 'case')
testcase: 111111122222222
demo:
case: 11112222
新建config.py文件,写入、读取、清除extract.yaml文件
def write_extract_yaml(data):
"""
写入到extract.yaml文件
:param data: 写入的数据,必须为字典类型(dict)
:return:
"""
try:
with open(get_object_path() + "/configs/extract.yaml", encoding="utf-8", mode='a') as f:
if isinstance(data, dict): # 如果是字典类型,就写入
yaml.dump(data=data, s