gpt4 book ai didi

python - Pytest xdist 和参数化测试正在每个线程执行设置?

转载 作者:行者123 更新时间:2023-12-01 01:57:34 27 4
gpt4 key购买 nike

我有一个使用 pytest 运行的测试文件

该文件具有参数化测试,还有一个设置,我希望它在任何测试运行之前仅运行一次,在该设置上我执行无法并行完成的操作(写入文本文件)。

设置是这样的

@pytest.fixture(scope="session", autouse=True)
def before_all_tests(request):
# Code that I want to run only once before all tests start to run

当我不使用 -n 参数运行时,一切正常

当我使用 -n 运行时,我遇到了一些问题,据我所知,这是因为两个线程同时进行设置

这是 xdist 的工作方式吗?设置是针对每个线程执行的?是否有任何范围可以确保设置在每个线程开始运行测试之前只执行一次?

最佳答案

Is this the way xdist works ? The setup is doing per thread ?

是的。单个进程中完全支持 session 范围的固定装置(未使用 xdist 时一个全局固定装置,否则每个 xdist 工作人员一个固定装置)

不幸的是,pytest 不支持在 xdist 工作人员之间共享固定装置。这是issue报告了相同的情况。

关于python - Pytest xdist 和参数化测试正在每个线程执行设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49995070/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com