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

通过SSH运行Selenium时Chrome崩溃报错的问题求助

SSH运行Selenium Chrome崩溃(DevToolsActivePort不存在)解决方法

问题背景

通过SSH远程执行Selenium测试时,Chrome频繁崩溃,报错DevToolsActivePort file doesn't exist。本地物理机运行测试完全正常,但SSH命令执行就失败。

使用的SSH命令:

ssh -tt -o 'StrictHostKeyChecking=no' <ip-address> 'Xvfb :89 -ac -noreset \&;;export DISPLAY=:89;./gradlew clean test --tests "testName" '

本地正常运行命令:

./gradlew clean test --tests "testName"

环境信息:Chrome 122、Selenium 4.13.0、Linux AWS(6.5.0-1015-aws),直接通过SSH启动Chrome时会出现GPU初始化失败等错误。

解决步骤

1. 调整Chrome启动参数,规避GPU及权限问题

在Selenium的ChromeOptions中添加以下参数,彻底避免无界面环境下的渲染冲突:

ChromeOptions options = new ChromeOptions();
// 禁用GPU加速,解决初始化失败问题
options.addArguments("--disable-gpu");
// 禁用沙箱(无root权限执行时必须添加)
options.addArguments("--no-sandbox");
// 指定固定调试端口,避免DevTools端口随机分配失败
options.addArguments("--remote-debugging-port=9222");
// 启用新版无头模式,更稳定的无界面运行
options.addArguments("--headless=new");
// 禁用共享内存,避免内存不足导致崩溃
options.addArguments("--disable-dev-shm-usage");

2. 优化Xvfb启动命令,确保环境就绪

修改SSH命令,给Xvfb分配明确的屏幕参数,并等待服务完全启动:

ssh -tt -o 'StrictHostKeyChecking=no' <ip-address> 'Xvfb :89 -screen 0 1920x1080x24 -ac -noreset & sleep 2; export DISPLAY=:89; ./gradlew clean test --tests "testName"'
  • -screen 0 1920x1080x24:指定屏幕分辨率和颜色深度,避免界面渲染异常
  • sleep 2:等待Xvfb完全初始化后再执行测试,避免DISPLAY环境未就绪

3. 确保ChromeDriver与Chrome版本完全匹配

Selenium 4.13.0默认集成的ChromeDriver可能不兼容Chrome 122,需手动下载对应版本的ChromeDriver并配置路径:

System.setProperty("webdriver.chrome.driver", "/opt/chromedriver/chromedriver");

4. 手动验证Xvfb+Chrome环境

在SSH会话中先单独验证环境是否正常,排除测试框架干扰:

Xvfb :89 -screen 0 1920x1080x24 -ac -noreset &
sleep 2
export DISPLAY=:89
/opt/google/chrome/chrome --headless=new --disable-gpu --no-sandbox --remote-debugging-port=9222 --version

如果能正常输出Chrome版本,说明环境没问题,再运行测试。

5. 修正SSH命令转义问题

原命令中\&;;的转义逻辑可能导致Xvfb未正确后台运行,改为以下写法:

ssh -tt -o 'StrictHostKeyChecking=no' <ip-address> '(Xvfb :89 -screen 0 1920x1080x24 -ac -noreset &); sleep 2; export DISPLAY=:89; ./gradlew clean test --tests "testName"'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 22:17:09