如何从pytest钩子内部知道pytestxdist是否已启用?

2024-04-25 11:40:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我想编写一个pytest会话完成钩子,该钩子知道xdist插件是否已被激活(例如,如果-n选项已被传递)。是否有官方/稳定的方法来实现这一点?我找到了一种方法来确定这是否是一个xdist工作进程,但当xdist被停用时,不能消除xdist主进程和“main”pytest进程之间的歧义

def pytest_sessionfinish(session):
    try:
        pytest_worker_id = session.config.slaveinput['slaveid']
    except AttributeError:
        # TODO disambiguate: are we the xdist master node or the "main" pytest node with xdist deactivated?
        ...

注意:这是为了摆脱这个conftest.py example中的try/except

提前谢谢! 问候


Tags: the方法插件node官方进程pytestmain