接口测试用YAML写测试用例

代码和用例分离时,测试用例用YAML或excel写都可以。一般接口测试用YAML写测试用例

原因:

1.方便的字典和YAML之间切换

2.YAML有数据类型

 

数据组成:

1.对象:通过字典表示 

key: value

2.数组:通过列表表示,通过一组对齐的 - 表示(YAML里面字符串一般不写引号)

-
  name: 获取接口统一鉴权码token接口1
  request:
    method: get
    url: https://api.weixin.qq.com/cgi-bin/token
    data:
      grant_type: client_credential
      appid: wx74a8627810cfa308
      secret: e40a02f9d79a8097df497e6aaf93ab80
    headers: null
  validate: null

 

3.基本数据类型

 

DDT数据驱动(不同于参数化)

方法:

@pytest.mark.parametrize(args_name, args_value)

args_name: 参数名,自定义

args_value:参数值,要么是list,要么是tuple(数组)

用法一:

@pytest.mark.parametrize("name", [{"花花":18},{"火火":16}])

用法二:解包

list里还有list

@pytest.mark.parametrize("name,age", [["花花":18],["火火":16]])
def read_yaml(path):
    with open(path, 'r', encoding='utf-8') as f:
        value = yaml.load(stream=f, Loader=yaml.FullLoader)
        return value
 @pytest.mark.parametrize("name", read_yaml("./testcases/test_api/test_02.yaml"))
def test_02_gan_ju(self, name):
    print(name)

 

 

 

 

YAML 或EXCEL都要解决的问题:

1.url怎么做到测试环境和生产环境切换

2.接口关联

3.动态参数

4.类型转换

5.文件上传

6.一个接口大概有几十个用例

7.处理断言

 

posted @ 2023-11-10 20:14  yimu-yimu  阅读(97)  评论(0编辑  收藏  举报