import pytest
from zonghe.baw import Member
from zonghe.caw import FileRead, Db, Asserts
@pytest.fixture(params=FileRead.read_yaml(r"datacase\login.yaml"))
def login_data(request):
return request.param
def test_login(login_data,baserequests,url,db):
phone = login_data['regdata']['mobilephone']
# 准备数据
print(login_data)
# 下发注册请求(登录成功、失败)
Member.register(baserequests,url,login_data['regdata'])
# 下发登录的请求
r = Member.login(baserequests,url,login_data['logindata'])
# 检查结果
# assert r.json()['msg'] == login_data['expect']['msg']
# assert r.json()['code'] == login_data['expect']['code']
# assert r.json()['status'] == login_data['expect']['status']
Asserts.assert_equal(r,login_data['expect'],"msg,code,status")
# 删除注册用户,清理环境
Db.delete_user(db,phone)
import pytest
from zonghe.baw import Member
from zonghe.caw import FileRead, Db, Asserts
@pytest.fixture(scope='module',params=FileRead.read_yaml(r"datacase\login_setup.yaml"))
def setup_data(request):
return request.param
@pytest.fixture(params=FileRead.read_yaml(r"datacase\login_data.yaml"))
def login_data(request):
return request.param
@pytest.fixture(scope='module')
def register(setup_data,baserequests,url,db):
#初始化环境:删除注册用户
Db.delete_user(db,setup_data['regdata']['mobilephone'])
#下发注册的请求
Member.register(baserequests,url,setup_data['regdata'])
yield
# 清理环境:删除注册用户
Db.delete_user(db,setup_data['regdata']['mobilephone'])
def test_login(register,baserequests,url,login_data):
#下发登录请求
r = Member.login(baserequests,url,login_data['regdata'])
#检查结果
# assert r.json()['msg'] == login_data['expect']['msg']
# assert r.json()['code'] == login_data['expect']['code']
# assert r.json()['status'] == login_data['expect']['status']
Asserts.assert_equal(r,login_data['expect'],"msg,code,status")
'''
import pytest
#注册失败的数据
from zonghe.caw import FileRead
@pytest.fixture(params=FileRead.read_yaml(r"datacase\register_fail.yaml"))
def fail_data(request):
return request.param
#注册失败的测试逻辑、测试步骤
def test_register_fail(fail_data):
#准备测试数据
print("测试数据为:",fail_data['data'])
print("预期结果为:",fail_data['expect'])
#下发请求'''
import pytest
from zonghe.baw import Member
from zonghe.caw import FileRead, Db, Asserts
# 注册失败的数据
from zonghe.test_script.conftest import baserequests, url
@pytest.fixture(params=FileRead.read_yaml(r"datacase\register_fail.yaml")) # yaml文件读取过来的
def fail_data(request):
return request.param
# 注册失败的测试逻辑/测试步骤
def test_register_fail(fail_data, baserequests, url):
# 准备测试数据
print("测试数据为:", fail_data['data'])
print("预期结果为:", fail_data['expect'])
# 下发请求
r = Member.register(baserequests, url, fail_data['data'])
# 检查结果
assert r.json()['msg'] == fail_data['expect']['msg']
assert r.json()['code'] == fail_data['expect']['code']
assert r.json()['status'] == fail_data['expect']['status']
@pytest.fixture(params=FileRead.read_yaml(r"datacase\register_pass.yaml")) # yaml文件读取过来的
def pass_data(request):
return request.param
#成功用例
def test_register_pass(pass_data, baserequests, url,db):
# 初始化环境(环境中可能有上次遗留的数据,或者其他人添加的数据,与本次执行的数据冲突了)
Db.delete_user(db,pass_data['data']['mobilephone'])
# 准备测试数据
print("测试数据为:", pass_data['data'])
print("预期结果为:", pass_data['expect'])
# 下发请求
r = Member.register(baserequests, url, pass_data['data'])
# 检查结果
# assert r.json()['msg'] == pass_data['expect']['msg']
# assert r.json()['code'] == pass_data['expect']['code']
# assert r.json()['status'] == pass_data['expect']['status']
Asserts.assert_equal(r,pass_data['expect'],"msg,code,status")
#########################################################
# 检查注册的用户在系统中存在
# 方法1.使用注册的用户登录 方法2.检查数据库 方法3.查询所有用户,结果在包含已注册用户
r = Member.list(baserequests,url)
assert pass_data['data']['mobilephone'] in r.text #校验手机号在结果里存在
# 清理环境:删除用户(这个脚本执行完,不影响其他脚本执行,不影响这个脚本的第二次执行)
# 方法1、使用删除用户的接口删除 方法2、数据库中删除
Db.delete_user(db,pass_data['data']['mobilephone'])
# 重复注册
@pytest.fixture(params=FileRead.read_yaml(r"datacase\register_repeat.yaml")) # yaml文件读取过来的
def repeat_data(request):
return request.param
def test_register_repeat(repeat_data, baserequests, url,db):
Db.delete_user(db,repeat_data['data']['mobilephone'])
# 准备测试数据
print("测试数据为:", repeat_data['data'])
print("预期结果为:", repeat_data['expect'])
r = Member.register(baserequests, url, repeat_data['data'])
# 可以不用校验
# assert r.json()['msg'] == repeat_data['expect']['msg']
# assert r.json()['code'] == repeat_data['expect']['code']
# assert r.json()['status'] == repeat_data['expect']['status']
Asserts.assert_equal(r,repeat_data['expect'],"msg,code,status")
r = Member.register(baserequests, url, repeat_data['data'])
print(r.text)
# assert r.json()['msg'] == repeat_data['expect']['msg']
# assert r.json()['code'] == repeat_data['expect']['code']
# assert r.json()['status'] == repeat_data['expect']['status']
Asserts.assert_equal(r,repeat_data['expect'],"msg,code,status")
Db.delete_user(db,repeat_data['data']['mobilephone'])
|