多环境接口测试通用封装

原理思路

封装

import requests
import yaml

class Api:

    env = yaml.safe_load(open("env.yaml"))


    #data 是个请求信息
    def send(self,data:dict):
        data["url"] = str(data["url"]).replace("testing-studio",self.env["testing-studio"][self.env["default"]])
        r = requests.request(method=data["method"],url=data["url"],headers= data["headers"])
        return   r

调用

from  unittest import TestCase
from api import  env_demo

class TestApi(TestCase):
    data = {
        "method": "get",
        "url": "http://testing-studio:9999:/demo1.txt",
        "headers": None
    }
    
    def test_send(self):
       api =  env_demo.Api()
       print(api.send(self.data).text)

害怕写错yaml格式,写个转换yaml格式方法调用一下

import  yaml

def test_yaml():
    env = {
        "default": "dev",
        "testing-studio":
            {
                "dev": "127.0.0.1",
                "test": "127.0.0.2"
            }
    }

    with open("env.yaml","w") as f:
        yaml.safe_dump(data=env,stream=f)

yam = test_yaml()

就可以得到转换成yaml格式的环境文件了

原文地址:https://www.cnblogs.com/aowumiaomiao/p/15260435.html