编辑:删除unittest(python单元测试)解决了我的问题。如果您将pytest和unittest混合使用,Python unittest可能会导致您的固定装置失败。我继承了测试类层次结构中的unittest.TestCase。
我在conftest.py中拥有会话范围固定装置:
@pytest.fixture(scope="session", autouse=True)
def test_client():
<SETUP>
client = Client(protocol)
return client
我想使用此夹具在多个测试类中向TCP服务器发送请求:
@pytest.mark.usefixture('test_client')
class TestCases(BaseTest):
...
def test_case_m(self, test_client):
....
results = test_client.query("bananas")
....
如何将会话范围的灯具定义为对象,然后如何在每个类中访问所述灯具?
我尝试了六种装饰器组合,并在会话范围固定装置中使用了收益/收益。不幸的是,我似乎无法使session-scope固定装置可用,无法在pytest上找到任何文档,也无法解决此问题的以前的堆栈溢出帖子。正确的模式是什么? pytest如何使对象可用?我真的很想知道在pytest中附加装饰器的目的,这对我来说似乎像是伏都教徒。