Python-接口自动化,封装依赖数据,接口数据继承

这段代码是调用依赖数据类,也就是使用这个类把依赖上个接口的字段值拿出来替换掉

self.depend_data = Dependent_data(depend_case)  #实例化,把依赖的接口id传进去
                    depend_response_data = self.depend_data.get_data_for_key(i) #获取依赖的key,运行接口返回出来的
                    depend_key = self.data.get_depend_field(i)  #通过行,将具体依赖的字段拿到
                    request_data[depend_key] = depend_response_data #将request_data值更新成依赖接口来到的值

下面这段是封装依赖数据类

# -*- coding: utf-8 -*-
from util.operation_excel import Operation_excel
from base.runmethod import Run_method
from data.get_data import GetData
from jsonpath_rw import jsonpath,parse
import json
class Dependent_data():
    def __init__(self,case_id):
        self.case_id = case_id  #初始化变量
        self.opera_excel = Operation_excel()    #实例化操作excel的类
        self.data = GetData()   #实例化获取数据的类

    #调用操作excel的类,用case_id拿到对应行的数据
    def get_case_line_data(self):
        rows_data = self.opera_excel.get_rows_data(self.case_id)
        return rows_data

    #执行依赖测试,获取结果
    def run_dependent(self):
        run_method = Run_method()
        row_num = self.opera_excel.get_row_num(self.case_id)    #调用操作excel的类,用case_id定位所在行
        url = self.data.get_url(row_num)
        method = self.data.get_request_method(row_num)
        data = self.data.get_data_for_json(row_num)
        header = self.data.is_header(row_num)   #以上几行是通过行号获取到:method,url,data,header
        res = run_method.run_main(method,url,data,header)   #调用执行类,拿到返回结果
        return json.loads(res)  #将json字符串转换为python能用的数据类型


    #根据依赖的key去获取执行依赖测试case的响应,然后返回
    def get_data_for_key(self,row):
        depend_data = self.data.get_depend_key(row) #通过行号拿到依赖的字段是啥
        response_data = self.run_dependent()
        json_exe = parse(depend_data)
        madle = json_exe.find(response_data)
        result =  [math.value for math in madle] [0]    #以上几句是通过执行依赖的接口拿到返回值,获取到依赖字段的值
        return result

Python-接口自动化,封装依赖数据,接口数据继承_第1张图片

你可能感兴趣的:(Python自动化,Python自动化,Python自动化)