pythonxdist插件是否会导致pytest_generate_测试多次执行?

2024-09-29 23:18:19 发布

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

我有一个简单的测试。在

def test_sample(str):
    print str

并使用pytest_generate_tests(),例如

^{pr2}$

现在如果我使用pythonxdist并行运行测试。我看到pytest_generate_tests()的调用次数取决于cmdline选项。在

在py.测试-n2-->打印“Entered pytest_generate_tests”两次。 这是正确的行为吗?我希望只有测试将在单独的线程中执行。在

环境: python 2.7 py.测试2.5.2款 pytest xdist 1.10版


Tags: samplepytestpytestdef选项tests次数
1条回答
网友
1楼 · 发布于 2024-09-29 23:18:19

是的,这是正确的。。。pytest_generate_tests是由使用的钩子py.测试在采集阶段,由每个从机执行,以获得要执行的测试(“测试项”)。哪个从机执行哪个测试项,而不是由启动测试会话的进程处理。在

我还没有完全研究所有的内部结构,但我认为其中一个原因是您不能将测试项从一个进程发送到另一个进程,因为它们不可序列化。因此,这种方法是让每个从机自己进行收集,以获得测试项及其“测试ID”,然后这些测试项和“测试ID”可以作为通信手段在进程之间交换,这两个从机都应该执行每个测试,并报告测试结果。在

相关问题 更多 >

    热门问题