创建测试用例testlogiyml
#登录测试用例
---
#测试用例名称
'case_name': '登录成功测试用例'
#url地址
'url': '/authorizations/'
#data
'data':
username: 'python'
password: '12345678'
#期望结果
'expect':
code: 200
body: ''username': 'python', 'user_id': 1'
---
#测试用例名称
'case_name': '登录失败测试用例'
#url地址
'url': '/authorizations/'
#data
'data':
username: 'pyth'
password: '12345678'
#期望结果
'expect':
code: 400
body: 'non_field_errors'
编写测试用例
# -*- coding: utf-8 -*-
# @Time : 2021/12/11 9:21
# @Author : jeffky
# @File : test_login.py
import os
from utils.RequestsUtil import Request
import pytest
from config import Conf
from config.Conf import ConfigYaml
from utils.YamlUtil import YamlReader
from utils.AssertUtil import AssertUtil
#1、获取测试用例内容list
# 获取testlogin.yml文件路径
test_file = os.path.join(Conf.get_data_path(),'testlogin.yml')
# print(test_file)
# 使用工具类来读取多个文档内容
data_list = YamlReader(test_file).data_all()
# print(data_list)
conf_y = ConfigYaml()
url_path = conf_y .get_conf_url()
# 2、参数化执行测试用例
@pytest.mark.parametrize('login',data_list)
def test_yaml(login):
# 初始化数据url、data
url = url_path+login['url']
data = login['data']
#post请求
request = Request()
r = request.post(url, json=data)
#打印结果
print(r)
# 断言
code = r['code']
AssertUtil().assert_code(code, login['expect']['code'])
body = r['body']
expected_body = login['expect']['body']
AssertUtil().assert_in_body(body, expected_body)
if __name__ == '__main__':
pytest.main(['-s','test_login.py'])
文章为作者独立观点,不代表股票交易接口观点