1. yaml用例设计--一个yaml中多个用例,且互相存在关联关系
- # 第一个用例
request:
method: post
url: http://192.168.0.1:8010/api
json:
accounts: admin
pwd: 123
type: username
headers:
Content-Type: application/json
- # 第二个用例
request:
method: post
url: http://192.168.0.1:8010/api/order/index
headers:
Content-Type: application/json
2. 设计多接口用例读取封装文章来源:https://www.toymoban.com/news/detail-811922.html
def read_testcase(yaml_path):
with open(yaml_path,encoding="utf-8") as f:
case_list = yaml.safe_load(f)
if len(case_list) >=2: # list长度大于等于2,则说明是多个接口用例,则yaml读取出来的格式为:[{},{}]
return [case_list] # 将返回格式修改为[[{},{}]]
else:
return case_list # 单接口的用例格式,直接返回即可:[{}]
3. 将读取caseinfo的方法进行list格式的兼容设计文章来源地址https://www.toymoban.com/news/detail-811922.html
def create_testcase(yaml_path):
@pytest.mark.parametrize('caseinfo', read_testcase(yaml_path))
def func(self,caseinfo):
global case_obj
if isinstance(caseinfo,list): # 多接口用例
for case in caseinfo:
case_obj = verify_yaml(case)
stand_case_flow(case_obj)
else: # 单接口用例
# 校验yaml中的数据
case_obj = verify_yaml(caseinfo)
# 用例的标准化流程
stand_case_flow(case_obj)
return func
到了这里,关于从0开始python学习-50.pytest之多接口用例封装的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!