Playwright项目未按预期并行运行,如何通过配置实现?
问题解决:Playwright项目级并行不生效的配置缺失
你遇到的问题核心是缺少fullyParallel: true配置项——Playwright默认仅会在单个测试项目内部并行执行用例,不会跨项目并行,哪怕你设置了workers参数。
解决步骤:
在你的playwright.config.ts的根配置中添加fullyParallel: true,修改后的核心配置片段如下:
export default defineConfig<TestOptions>({ // 其他现有配置... testDir: './tests', timeout: 60_000, workers: Variables.ci ? 2 : 1, // 新增这行配置,开启跨项目并行 fullyParallel: true, forbidOnly: Variables.ci, retries: Variables.ci ? 1 : 0, // 其他现有配置... });
配置说明:
fullyParallel: true:开启后,Playwright会在依赖的setup项目执行完成后,自动并行调度所有依赖它的测试项目。- 你的
workers: 2会限制总并发数,意味着同一时间最多有2个worker进程在运行(可能是2个不同的项目,或者一个项目里的2个用例,具体由Playwright调度)。
额外验证点:
你的配置里已经给所有业务项目设置了dependencies: ['setup'],这部分没问题,setup项目会优先执行,完成后才会启动其他项目的并行运行。
内容的提问来源于stack exchange,提问作者hubesal
相关产品推荐
相关产品推荐

