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

Playwright webServer启动失败(Exit code:2):React+TS+Vite环境求助

问题排查与解决

核心问题分析

Exit code 2通常表示命令执行失败,你的webServer.command配置了npm run build && npm run dev,这是两个连续执行的命令:先构建项目,再启动开发服务器。只要其中任意一步失败,整个命令就会返回错误码2。

具体排查步骤

  • 单独执行构建命令
    先在终端手动运行npm run build,看是否能正常完成构建。Vite项目构建失败常见原因:

    • TypeScript语法错误(比如类型不匹配、未定义的变量)
    • 依赖缺失或版本不兼容
    • 路径配置错误(比如vite.config.ts中的别名设置问题)
    • 资源文件引用错误(比如图片、字体路径不对)
  • 检查开发服务器启动命令
    如果构建没问题,再手动运行npm run dev,确认开发服务器能否正常启动并访问http://127.0.0.1:3000。可能的问题:

    • 端口3000被其他进程占用
    • package.json中dev命令的配置有误(比如Vite的命令写错)
  • 简化webServer命令
    暂时把webServer.command改成仅npm run dev,跳过构建步骤,测试Playwright能否正常连接服务器。如果这样能成功,说明问题出在npm run build环节;如果还是失败,就集中排查开发服务器的启动问题。

优化建议

  • 开发环境无需提前构建:Playwright测试开发环境时,直接启动开发服务器即可,不需要先执行build——构建是生产环境的操作,开发服务器会实时编译代码,没必要多此一举。
  • 添加启动超时与日志配置:在webServer中增加timeout和日志输出配置,方便查看服务器启动时的日志,快速定位错误:
    webServer: {
        command: 'npm run dev',
        url: 'http://127.0.0.1:3000',
        reuseExistingServer: !process.env.CI,
        timeout: 120 * 1000, // 延长超时时间到2分钟
        stdout: 'pipe', // 输出服务器启动日志到Playwright控制台
        stderr: 'pipe'
     },
    

内容的提问来源于stack exchange,提问作者Chen Peleg

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 19:31:02