login.yaml文件
'''
---
#成功登錄
"url": "http://******/loginByPwd"
"body": '{
"token": "",
"mobile": "******",
"pwd": "******"
}'
"response": '{"code": "1000"}'
---
#用戶名為空
"url": "http://******/loginByPwd"
"body": '{
"token": "",
"mobile": "",
"pwd": "******"
}'
"response": '{"code": "1001"}'
---
#密碼為空
"url": "http://******/loginByPwd"
"body": '{
"token": "",
"mobile": "******",
"pwd": ""
}'
"response": '{"code": "1001"}'
#yaml文件編寫,冒號后面一定要加一個空格,記住了...
'''
yaml_read.py文件
'''
import yaml
def read_yaml():
with open('login.yaml', 'r', encoding='utf-8') as f:
return list(yaml.safe_load_all(f))
# print(yaml.safe_load_all(f)) # <generator object load_all at 0x0000011E57B9F510>返回的是一個內存地址
# yaml文件學習博客:https://blog.csdn.net/weixin_38256474/article/details/85395196
# yaml方法學習:https://www.jb51.net/article/184636.htm
# print(read_yaml())
# for item in read_yaml():
# print(item)
'''
test_yaml_login.py
'''
import pytest
import requests
import json
from pytest_study.yaml_read import *
@pytest.mark.parametrize('data', read_yaml())
def test_yaml_login_001(data):
r = requests.post(url=data['url'], data=json.loads(data['body'])) # data['body']是字符串類型
assert r.json()['code']==json.loads(data['response'])['code'] # data['response']是字符串類型
if __name__ == '__main__':
pytest.main(['-s', '-v', 'test_yaml_login.py'])
"""
1 yaml庫的操作
yaml.safe_dump() 將一個python值轉換為yaml格式文件
yaml.safe_load() 將yaml格式文件轉換為python值
yaml.safe_dump_all() 將一序列的python值轉換為yaml格式文件
yaml.safe_load_all() 將yaml格式文件轉換為python值
"""
'''