实例1
conftest.py
@pytest.fixture()
def fun1():
print ('run func1')
yield
print ('func1 done')
@pytest.fixture()
def fun2():
print ('run func2')
yield
print ('func2 done')
test_db.py
def test01(fun1):
print ('run test01')
def test02(fun1):
print ('run test02')
执行:
实例2
conftest不变
test_db.py
def test01(fun1):
print ('run test01')
def test02(fun1):
print ('run test02')
实例3:
修改fun1的scope为'module'
@pytest.fixture(scope="module")
def fun1():
print ('run func1')
yield
print ('func1 done')
@pytest.fixture()
def fun2():
print ('run func2')
yield
print ('func2 done')
def test01(fun1):
print ('run test01')
def test02(fun1):
print ('run test02')
以上可以看出,估计的scope默认为function,即每个函数执行的时候,默认调用一次.当将固件的scope变为module的时候,则只会在文件调用的时候作用一次.且conftest的配置信息,会自动加载引用,只需要在函数中直接引用即可.