Cypress 11.2.0在Jenkins流水线中启动失败求助
Cypress启动失败(SIGSEGV段错误):本地Docker正常,Jenkins流水线异常
错误日志
[STARTED] Task without title. [FAILED] Cypress failed to start. [FAILED] [FAILED] This may be due to a missing library or dependency. [FAILED] [FAILED] Please refer to the error below for more details. [FAILED] [FAILED] ---------- [FAILED] [FAILED] Command was killed with SIGSEGV (Segmentation fault): /root/.cache/Cypress/11.2.0/Cypress/Cypress --no-sandbox --smoke-test --ping=265 [FAILED] [FAILED] ---------- [FAILED] [FAILED] Platform: linux-arm64 (Debian - 11.4) [FAILED] Cypress Version: 11.2.0 Cypress failed to start.
环境版本信息
- Cypress: 11.2.0
- Node: 18.9.0
- Debian: 11.4 (arm64)
- React: 17.0.2
问题描述
该任务在本地Docker环境中可正常运行,但在Jenkins流水线执行相同命令时,Cypress启动失败,抛出SIGSEGV段错误。
排查建议
- 检查系统依赖完整性:Jenkins代理的Debian环境可能缺少Cypress arm64架构必需的底层库,手动安装以下依赖包:
apt-get update && apt-get install -y libgtk-3-0 libnss3 libxss1 libasound2 libgbm-dev libatk-bridge2.0-0 libdrm2 - 验证执行权限:本地使用root用户运行,Jenkins可能采用非root用户,尝试在命令前添加
sudo,或确保执行用户对/root/.cache/Cypress目录有读写权限。 - 清理损坏缓存:Jenkins环境中的Cypress缓存文件可能损坏,执行以下命令清理后重新安装Cypress:
rm -rf /root/.cache/Cypress npm install cypress@11.2.0 --save-dev - 对齐Docker镜像配置:确认Jenkins流水线使用的Docker镜像与本地测试镜像完全一致,避免镜像中依赖包版本或安装内容存在差异。
- 调整Node版本兼容性:Cypress 11.2.0对Node 18的兼容性有限,尝试降级到Node 16.x版本后重新测试。
- 启用调试日志定位:在Jenkins执行命令前添加环境变量,获取更详细的启动日志:
DEBUG=cypress:* npx cypress run --no-sandbox
内容的提问来源于stack exchange,提问作者ria
相关产品推荐
相关产品推荐

