接口自动化测试框架-多环境运行

背景:

自动化测试用例,会在多个环境进行运行,例如:测试环境、开发环境、甚至生产环境,为了不用每次修改测试环境,可将环境信息通过yaml做数据驱动,每次只要修改yaml中信息即可。

设计思路:

将url中域名用不同的测试环境替代

1. yaml文件中存储所有测试环境ip或域名,指定默认环境

2. 测试用例读取默认环境替代url中的域名,执行测试用例

3. 修改运行环境,只要修改默认环境即可

具体实现:

yaml

env:
  dev: mp.csdn.net
  test: 127.0.0.3
default: dev

读取yaml文件

def read_yaml():
    with open("../testdata/env_data.yaml","r") as f:
        data = yaml.safe_load(f)
    return data

执行测试用例

class TestEnv():
    data = {"method": "get",
            "url": "https://www.baidu.com/",
            "headers": None
            }

    env = read_yaml()

    def test_dev(self):
        res = requests.request(self.data["method"],
                               url=self.data["url"].replace("www.baidu.com",self.env['env'][self.env['default']]),
                               headers=self.data['headers'])
        print(res.text)

你可能感兴趣的:(接口自动化测试,自动化测试框架,测试用例,自动化)