首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用py.test xdist控制测试的分布

使用py.test xdist控制测试的分布
EN

Stack Overflow用户
提问于 2013-03-07 07:45:29
回答 1查看 1.1K关注 0票数 3

我有几千个测试要并行运行。这些测试都是编译后的二进制文件,返回代码为0或非零(失败时)。其中一些未知的子集试图使用相同的资源(文件、端口等)。每个测试都假设它是独立运行的,并且只在资源不可用时报告失败。

我使用Python使用子进程模块启动每个测试,这非常好用。我研究了Nose以实现并行化,但我需要自动生成测试(将每个1000+二进制文件包装到使用子进程的Python类中),而且Nose的多处理模块不支持并行化自动生成的测试。

我最终选择了PyTest,因为它可以使用xdist插件通过SSH在远程主机上运行自动生成的测试。

但是,据我所知,xdist似乎不支持对如何分发测试的任何控制。我想给它一个N台机器的池,并让每台机器有一次测试运行。

使用PyTest/xdist可以实现我想要的吗?如果没有,有没有工具可以做我想要的?

EN

回答 1

Stack Overflow用户

发布于 2014-08-01 13:23:30

我不确定这是否会有帮助。但是,如果您提前知道如何划分测试,而不是让pytest分发测试,那么您可以使用持续集成服务器为每台不同的机器调用不同的pytest运行。使用-k或-m选择测试的子集,或者简单地指定不同的测试目录路径,您可以控制一起运行哪些测试。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15260422

复制
相关文章

相似问题

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