day99 pytest使用conftest管理fixture
学习日期:20241216
学习目标:pytest基础用法 -- pytest使用conftest管理fixture
学习笔记:
fixture(scope="function")
conftest.py为固定写法,不可修改名字,使用conftest.py文件方法无需导入,函数作用于当前文件夹及下属文件
- pytest使用fixture返回数据,可以接收返回值
conftest.py
@pytest.fixture(scope="function")
def get_params():
params = {'key1': 'value1', 'key2': 'value2'}
return params
test_fixture_return.py
import pytest
import requests
def test_getmobile(get_params):
print("测试get请求")
#第1种方法
# r=requests.get('https://httpbin.org/get',params=get_params)
#第2种方法
key1 = get_params['key1']
key2 = get_params['key2']
r=requests.get('https://httpbin.org/get',params={'key1':key1, 'key2':key2})
print(r.status_code)
assert r.status_code == 200
res = r.json()
assert res['url'] == 'https://httpbin.org/get?key1=value1&key2=value2'
assert res['origin'] == '163.125.202.248'
assert res['args']['key1'] == 'value1'
assert res['args']['key2'] == 'value2'
总结
- conftest.py为固定写法,不可修改名字,使用conftest.py文件方法无需导入