首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我能让pytest-xdist并行化test *文件*而不是test *方法*吗?

我能让pytest-xdist并行化test *文件*而不是test *方法*吗?
EN

Stack Overflow用户
提问于 2022-07-02 10:11:42
回答 1查看 250关注 0票数 1

我有一个大型测试套件,包含数千个信息提取引擎的测试。大约有500个输入,我必须从每个输入中提取10-90项信息。

为了达到最大的透明性,我分别从每个输入中测试每个项,这样我就可以查看pytest日志,并准确地判断哪个测试在代码更改后翻转。但是,由于在每个测试中运行提取是没有效率的,所以我组织了我的测试,所以每次输入只进行一次提取,设置了一个测试全局变量,然后每个测试只检查结果的一个方面。

在使用python时,这种设置似乎阻止了任何加速增益。显然,pytest仍然会在一个线程中初始化所有500个测试文件,然后让单个工作人员执行测试方法--但是实际的测试不需要时间,所以我什么也不保存!

有没有一种简单的方法可以指示pytest-xdist将测试文件而不是测试方法分发给工作人员,这样我就可以并行处理对引擎的500次调用了吗?

EN

回答 1

Stack Overflow用户

发布于 2022-07-02 10:27:17

根据官方文档- https://pytest-xdist.readthedocs.io/en/latest/distribution.html,您可以使用以下内容之一:

  • 自定义组(用@pytest.mark.xdist_group标记所有相关测试),并使用标志--dist loadgroup运行cli。如果您使用OOP样式(带有测试方法的测试类或带有测试的模块)--使用pytest CLI标志

--dist loadscope,则可以帮助您在孤立的worker

  • 中运行整个组(在您的情况下--所有类方法)--这种方法将使组自动(模块或类)并确保组中的所有测试都在相同的进程中运行。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72838240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档