是否可以在setup_method上使用pytest.fixture,以便在每个测试用例之间总是可以完成一些操作?我试过使用像下面这样的夹具,结构看起来很好。我可以在funcA完成之前执行每个测试用例。但是,我不希望在每个tesecase之前包含@pytest.mark.usefixtures('funcA')
,而是我想更多地使用setup_method。是否有可能
class TestSuite(TestBase):
@classmethod
def setup_class(cls):
super(TestSuite, cls).setup_class()
'do something for steup class'
@classmethod
def teardown_class(cls):
super(TestSuite, cls).teardown_class()
'do something for teardown class'
def setup_method(self):
'do log in'
'do a,b c for setup_method'
@pytest.fixture(scope="function")
def funcA(self):
print('do function A')
@pytest.mark.usefixtures('funcA')
def test_caseA(self):
'check a'
@pytest.mark.usefixtures('funcA')
def test_caseB(self):
'check b'
@pytest.mark.usefixtures('funcA')
def test_caseC(self):
'check c'
答案 0 :(得分:1)
您可以将灯具作为参数传递给测试:
def test_caseA(self, funcA):
'check a'
def test_caseB(self, funcA):
'check b'
def test_caseC(self, funcA):
'check c'