场景:你已经可以将测试方法前要执行的或依赖的解决了,测试 方法后销毁清除数据的要如何进行呢?范围是模块级别的。类似 setupClass
解决:通过在同一模块中加入 yield关键字,yield是调用第一次 返回结果,第二次执行它下面的语句返回。
py1.py
import pytest
@pytest.fixture()
def login():
print(‘输入用户名密码登陆‘)
yield
print(‘退出登陆‘)
py2.py
def test_cart(login):
print(‘用例1,登陆后执行添加购物车功能操作‘)
def test_search():
print(‘用例2,不登陆查询功能操作‘)
def test_pay(login):
print(‘用例3,登陆后执行支付功能操作‘)
执行结果:
输入用户名密码登陆
PASSED [ 33%]用例1,
登陆后执行添加购物车功能操作
退出登陆
test_fixure.py::test_search PASSED [ 66%]用例2,
不登陆查询功能操作
test_fixure.py::test_pay 输入用户名密码登陆
PASSED [100%]用例3,
登陆后执行支付功能操作
退出登陆
原文:https://www.cnblogs.com/QaStudy/p/11638352.html