使用pytest xdist在分发之前运行conftest

时间:2014-03-20 00:46:46

标签: pytest

任何人都可以帮助解决以下要求。在为整个模块启动测试套件之前,我必须连接到VM。通过对该套件使用Conftest,我很成功。但是现在,我想使用Xdist插件将测试分发到多个CPU /内核....当我尝试这样做时,每个进程都运行起来很困难我有多个连接的实例。 有没有办法在开始分发之前运行conftest? 要么 有没有办法以任何不同的方式实现这一目标?

1 个答案:

答案 0 :(得分:1)

你是这样开始你的虚拟机吗?

# 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