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

Chrome 107版本Selenium测试driver.get()超时问题求助

Chrome更新后Selenium driver.get()抛出TimeoutException(Mac OS)

问题信息

环境

  • Selenium版本:4.5.3
  • WebDriver Manager版本:5.3.0
  • 本地Chrome版本:107.0.5304.87
  • 操作系统:Mac OS

症状

本地使用Chrome运行测试时,driver.get()方法抛出TimeoutException,但Firefox浏览器可正常执行测试。问题在Chrome自动更新后出现,已尝试以下操作但未解决:

  • 替换为手动下载的对应版本ChromeDriver(107.0.5304.62)
  • 更新Selenium和WebDriver Manager至最新版本

报错日志

15:41:34.598 INFO Using chromedriver 107.0.5304.62 (resolved driver for Chrome 107) 
15:41:34.618 INFO Exporting webdriver.chrome.driver as /Users/norayr.sargsyan/.cache/selenium/chromedriver/mac64/107.0.5304.62/chromedriver 

Starting ChromeDriver 107.0.5304.62 (1eec40d3a5764881c92085aaee66d25075c159aa-refs/branch-heads/5304@{#942}) on port 21156
Only local connections are allowed.

Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
Oct 31, 2022 3:41:36 PM org.openqa.selenium.devtools.CdpVersionFinder findNearestMatch
WARNING: Unable to find an exact match for CDP version 107, so returning the closest version found: 106
org.openqa.selenium.TimeoutException: java.util.concurrent.TimeoutException
Build info: version: '4.5.3', revision: '4b786a1e430'
System info: os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.16', java.version: '11.0.10'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Command: [3c1f94f7071ec62f235edda9a3827a1f, get {url=https://vbs-dev-qa-auto.bynder.com}]
Capabilities {acceptInsecureCerts: false, browserName: chrome, browserVersion: 107.0.5304.87, chrome: {chromedriverVersion: 107.0.5304.62 (1eec40d3a576..., userDataDir: /var/folders/cb/jcvpr2vx6ln...}, goog:chromeOptions: {debuggerAddress: localhost:50070}, networkConnectionEnabled: false, pageLoadStrategy: normal, platformName: MAC, proxy: Proxy(), se:cdp: ws://localhost:50070/devtoo..., se:cdpVersion: 107.0.5304.87, setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify, webauthn:extension:credBlob: true, webauthn:extension:largeBlob: true, webauthn:virtualAuthenticators: true}

解决方案

1. 修复CDP版本不匹配问题

日志中CDP版本匹配警告是核心诱因之一:

  • 升级Selenium到4.6.0+:Selenium 4.6.0及以上版本内置了CDP版本自动适配逻辑,彻底解决版本不兼容问题。
  • 若无法升级,手动指定CDP版本:初始化ChromeDriver时添加能力参数,强制匹配当前Chrome的CDP版本。示例Java代码:
ChromeOptions options = new ChromeOptions();
options.setCapability("se:cdpVersion", "107.0.5304.87");
ChromeDriver driver = new ChromeDriver(options);

2. 调整Chrome启动参数

添加以下参数绕过环境限制:

ChromeOptions options = new ChromeOptions();
// 禁用沙箱(Mac部分环境存在权限冲突)
options.addArguments("--no-sandbox");
// 禁用GPU加速,避免渲染阻塞
options.addArguments("--disable-gpu");
// 禁用扩展,排除第三方干扰
options.addArguments("--disable-extensions");
// 设置页面加载策略为'eager',无需等待所有资源加载完成
options.setPageLoadStrategy(PageLoadStrategy.EAGER);
ChromeDriver driver = new ChromeDriver(options);

3. 确保ChromeDriver与Chrome版本精确匹配

ChromeDriver 107.0.5304.62与你的Chrome 107.0.5304.87为同大版本但小版本差异,部分场景下会导致兼容性问题:

  • 下载与Chrome完全一致的ChromeDriver版本(107.0.5304.87),手动替换现有驱动文件。
  • 使用WebDriver Manager时强制指定版本:
WebDriverManager.chromedriver().driverVersion("107.0.5304.87").setup();

4. 检查系统权限与网络

  • 给ChromeDriver添加执行权限:终端执行chmod +x /Users/norayr.sargsyan/.cache/selenium/chromedriver/mac64/107.0.5304.62/chromedriver
  • 手动用Chrome打开目标URL,确认页面能正常加载,排除网站或网络故障。
  • 临时关闭防火墙、代理工具,避免拦截ChromeDriver与Chrome的本地通信。

5. 重置Chrome配置

Chrome更新后可能残留异常配置:

  • 关闭所有Chrome窗口,终端执行rm -rf ~/Library/Application\ Support/Google/Chrome/Default(注意备份书签等数据),重置后重新运行测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 02:20:30