有谁能帮助解决以下需求吗?在开始测试套件之前,我必须连接到虚拟机,整个模块只有一次。我成功地在套件中使用了Conftest。但是现在,我想使用Xdist插件....将测试分发到多个CPU/内核当我尝试这样做时,每个进程都运行conftest,并且我有多个连接实例。有没有办法在开始分发之前运行conftest ?或有没有别的方法可以达到这个目的?
您是这样启动虚拟机的吗?
# contents of conftest.py
def startup_vm():
...
startup_vm()
如果是这种情况,您可以使用可用的几个插件钩子之一来代替。由于您希望每个测试会话只执行一次钩子,因此可以使用如下内容:
# contents of conftest.py
def startup_vm():
...
def pytest_configure(config):
startup_vm()
def pytest_unconfigure(config):
shutdown_vm()
完整的插件列表在这里:
http://pytest.org/latest/plugins.html well-specified-hooks