Yaml的作用
yaml的作用主要是2部分:
·1、用于全局配置文件
2、用于测试用例的编写
Yaml的规则
1、yaml是一种数据格式
2、使用缩进表示层级,不使用tab键来缩进
3、缩进没有数量限制,只要对齐就行
4、数据的组成是键值对的形式,具体格式是 键:+空格+值,数组对象用-横线开头
Yaml的编写
1、全局配置文件
可以通过extract.yml文件来进行接口关联,其中extract.yaml是空白的yaml文件,名称是固定的
首先需要在py文件中写方法来读写extract.yaml文件的信息
class YamlUtil:
读取yaml文件的键值
def red_yaml(self,key):
with open(./extract.yaml,encoding="utf-8",mode='r')as f 打开yaml文件进行读取
value=yaml.load(stream=f,Loader=yaml.FullLoader)
return value[key] 返回键的值
写信息到extract.yaml文件中
def write_yaml(self,data):写信息到yaml文件中
with open(./extract.yaml,encoding="utf-8",mode='a')as f
yaml.dump(data=data,stream=f,allow_unicode='utf-8')
清除extract.yaml的信息
@pytest.fixtrue(scope='session',autouse=True)
def clean_yaml(self):
with open(./extract.yaml,encoding="utf-8",mode='a')as f
f.truncate()
2、用例的编写
yaml文件里的以键值对的形式写测试用例
login.yml
测试用例的读取
class Login:
def read_login(self,file_name):
with open(os.getcwd()+‘./'+file_name,mode='r',encoding=)as f:
value=yaml.load(stream=f,loader=yaml.Fulloder)
return value
Yaml的调用
1、extract.yaml临时信息的调用,通过调用yaml的读写方法来实现
2、yaml测试用例的调用,需要和@pytest.mark.parametrize配合使用
@pytest.mark.parametrize('caseinfo',Login().read_login(login.yml))
def login(self,'caseinfo'):
name=caseinfo['name']获取yaml文件中name的值