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

Selenium调用Chromedriver打开空白页后自动关闭报错如何排查

Selenium Chromedriver启动空白页闪退问题排查
  • 系统Chrome安全策略变更:如果近期Win10系统推送过组策略更新,或是企业域环境新增了Chrome浏览器管控规则,会阻止chromedriver对Chrome进程的操控,即使驱动和浏览器版本完全匹配也会出现启动后立即终止的情况。可在Chrome地址栏输入chrome://policy/查看是否有新增的异常策略项。
  • 本地缓存的驱动文件损坏:webdrivermanager拉取的chromedriver文件如果被杀毒软件误删、篡改,或者缓存目录存在权限问题,即使版本号匹配也无法正常和浏览器交互。可手动清空webdrivermanager默认缓存目录(通常为用户目录下的.m2/repository/webdriver或.cache/selenium路径),重新运行测试触发驱动重新拉取。
  • 项目依赖版本冲突:如果近一周内项目新增/更新过其他依赖,可能和当前使用的Selenium 3.14.0版本产生隐式冲突,尤其是okhttp、guava这类Selenium依赖的基础组件版本被覆盖时,会直接触发ExceptionInInitializerError初始化错误。如果是Maven项目可执行mvn dependency:tree命令排查依赖树,确认是否存在版本被强制覆盖的情况。
  • Chrome用户配置异常:如果启动Chrome时复用了本地默认的用户配置文件,近期配置文件损坏、或是新增了会拦截自动化操控的扩展程序,也会导致启动后闪退。可在初始化驱动时添加以下启动参数规避该问题:
ChromeOptions options = new ChromeOptions();
// 禁用沙箱模式
options.addArguments("--no-sandbox");
// 禁用所有扩展
options.addArguments("--disable-extensions");
// 启用无痕模式
options.addArguments("--incognito");
// 禁用共享内存限制
options.addArguments("--disable-dev-shm-usage");
WebDriver driver = new ChromeDriver(options);
  • 安全工具拦截:如果近期杀毒软件、Windows Defender更新了防护规则,会将chromedriver对浏览器的操控判定为风险行为,直接终止Chrome进程。可临时关闭实时防护后重新运行测试,验证是否为拦截导致的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 20:27:01