pytest----fixture(1)--使用fixture执行配置及销毁逻辑
1使用fixture执行配 置及销毁;非常灵活 使用。
2数据共享:在 conftest.py配置里写方 法可以实现数据共享, 不需要import导入。可 以跨文件共享
3scope的层次及神 奇的yield组合相当 于各种setup 和teardown
使用fixture执行配置及销毁逻辑
场景:测试用例执行时,有的用例的数据保存在数据库中,需要先连 接数据库再执行测试用例,最后停止数据库的连接。setup和teardown 可以实现。fixture可以灵活命名实现。默认scope(范围)function
• 步骤:
1. 导入pytest
2. 在登陆的函数上面加@pytest.fixture()
3. 在要使用的测试方法中传入(登陆函数名称),就先登陆 4. 不传入的就不登陆直接执行测试方法。
@pytest.fixture()
def login():
print("\n输入用户名密码登陆")
def test_cart(login):
print('用例1,登陆后执行添加购物车功能操作')
def test_search():
print('用例2,不登陆查询功能操作')
def test_pay(login):
print('用例3,登陆后执行支付功能操作
pytest_fixture.py::test_cart
输入用户名密码登陆
PASSED [ 33%]用例1,登陆后执行添加购物车功能操作
pytest_fixture.py::test_search PASSED [ 66%]用例2,不登陆查询功能操作
pytest_fixture.py::test_pay
输入用户名密码登陆
PASSED [100%]用例3,登陆后执行支付功能操作