1. 需安装pyyaml
? ? ? ? 安装命令: pip install pyyaml
?
2. Yaml写入数据
? ? ? ? ?yaml语法一定要正确空格一定要检查
- # test_01用例 密码错误
username: 123456
password: 123456
assert_judge: 登录失败--密码错误
- # test_01用例 密码正确
username: admin
password: ppp
assert_judge: 欢迎您
3.? 封装Yaml方法
? ? ? ? 封装yaml方法供测试用例读取数据调用
? ? ? ? 创建yamlload.py?
"""
NAME: MAZHIAHO
DATE: 2021/7/26 19:00
用来读取yaml的数据
"""
# yaml需要安装 pip install pyyaml
import yaml
def loadyaml(filename):
"""
读取yaml的方法
"""
files = open(filename, 'r', encoding='utf-8')
data = yaml.load(files, Loader=yaml.FullLoader) # 文件流,加载方式
return data
# a = loadyaml('../data/user.yaml')
# print(a)
4. 通过 @pytest.mark.parametrize() 实现数据驱动
@allure.story("用户名密码")
@allure.title("测试用例标题 - 登录")
@pytest.mark.parametrize('udata', loadyaml('./data/user.yaml'))
def test_01_login(self, udata):
"""
:param udata: yaml数据
"""
self.lp.login(udata['username'], udata['password'])
self.lp.assertTextEqString(udata['assert_judge'])
if __name__ == '__main__':
pytest.main()
|