Python接口自动化提取全局变量

默认目标是从响应结果中提取参数(access_token)
为什么要提取:为了框架的通用性
要提取谁
提取token或者code
怎么提取
思路:
第一步:
1、在excel中增加字段extract_data,用来存放需要提取的key和提取表达式
2、获取到extract_data,转成python对象
3、遍历extract_data的key,value,拿value(提取表达式)去响应结果中去获取数据
4、拿到数据之后,key作为全局变量的key,value(提取表达式)拿到的数据做为value,设置为全局属性

import json
from jsonpath import jsonpath

from tools.handle_attribute import HandleAttribute


class HandleExtract:
    def handle_extract(self, extract_data: str, response: dict):
        if extract_data:
            
            # 将excel中的extract_data转换成python对象
            extract_data = extract_data if isinstance(extract_data, dict) else json.loads(extract_data)
            # 遍历extract_data的key 和value
            for key, value in extract_data.items():
                
                #使用jsonpath从response取value的值
                val = jsonpath(response, value)[0]
                
                #拿到value 使用setattr内置函数变成全局属性
                setattr(HandleAttribute, key, val)
        else:
            print("excel中extract_data为空,不需要提取全局变量")
            创建handle_attribute.py,放在common里

2.创建的handle_attribute.py文件,再定义一个类,可以为空,作为保存变量的类

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值