You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用pytest并行运行不同文件Python测试且单文件内顺序执行?

实现按文件并行、单文件内顺序执行的pytest方案

完全可以实现你的需求——让不同测试文件并行运行,同时保证单个文件内的测试按顺序执行。核心思路是利用pytest-xdist的分组执行功能,具体步骤如下:

1. 安装依赖

确保已安装pytest-xdist:

pip install pytest-xdist

2. 关键运行命令

使用以下命令启动测试:

pytest -n auto --dist=loadscope
  • -n auto:自动使用所有可用CPU核心(也可指定具体数量,比如-n 4)
  • --dist=loadscope:将测试按模块(文件)或类分组执行。这意味着每个测试文件会作为一个整体分配给一个worker,文件内的所有测试会按顺序执行,而不同文件则在不同worker上并行运行。

3. 适配测试结构

  • 将涉及机器启停的所有相关测试放在同一个文件中:这样它们会被分配到同一个worker,严格按顺序执行,避免并行冲突。
  • 其他独立测试可以分散在不同文件中:这些文件会和启停测试文件同时并行运行,大幅节省整体耗时。

额外注意事项

  • 如果你的测试使用类组织,--dist=loadscope也会按类分组执行,类内的测试保持顺序。
  • 确保并行运行的测试文件之间没有资源冲突(比如不要同时操作同一台机器),必要时为不同文件分配独立的测试资源。

内容的提问来源于stack exchange,提问作者Ivajlo Iliev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 05:41:19