Chrome 123.0.6312.106执行Selenium代码时遇SessionNotCreatedException
Chrome 123.0.6312.106 + Selenium Java 4.19.1 触发SessionNotCreatedException异常
环境信息
- Chrome浏览器版本:123.0.6312.106(64位)
- Selenium版本:4.19.1
- Java版本:11.0.20
- 操作系统:Windows 11
执行代码
package com.test.org; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; public class Test { public static void main(String[] args) { ChromeOptions options = new ChromeOptions(); options.addArguments( "--remote-debugging-pipe" ); options.addArguments("--disable-dev-shm-usage"); // 解决资源限制问题 options.addArguments("start-maximized"); // 最大化窗口启动浏览器 options.addArguments("disable-infobars"); // 禁用信息栏 options.addArguments("--disable-extensions"); // 禁用扩展 options.addArguments("--disable-gpu"); // 仅适用于Windows系统 options.addArguments("--no-sandbox"); // 绕过操作系统安全模型 WebDriver driver = new ChromeDriver(options); String baseUrl = "http://demo.guru99.com/test/newtours/"; String expectedTitle = "Welcome: Mercury Tours"; String actualTitle = ""; // 启动浏览器并访问目标URL driver.get(baseUrl); // 获取页面实际标题 actualTitle = driver.getTitle(); /* * 对比页面实际标题与预期标题,打印"通过"或"失败"结果 */ if (actualTitle.contentEquals(expectedTitle)){ System.out.println("com.test.org.Test Passed!"); } else { System.out.println("com.test.org.Test Failed"); } // 关闭浏览器 driver.close(); } }
错误信息
主线程出现异常:org.openqa.selenium.SessionNotCreatedException: 无法启动新会话。响应码500。消息:超时:接收渲染器消息超时:60.000 主机信息:主机:'UKC-3HTNSL3',IP:'192.168.0.26' 构建信息:版本:'4.19.1',修订版:'abe0ee07dc' 系统信息:操作系统名称:'Windows 11',操作系统架构:'amd64',操作系统版本:'10.0',Java版本:'11.0.20' 驱动信息:org.openqa.selenium.chrome.ChromeDriver 命令:[null, newSession {capabilities=[Capabilities {browserName: chrome, goog:chromeOptions: {args: [--no-sandbox, --remote-debugging-pipe], binary: C:\Program Files (x86)\Goog..., extensions: []}}]}] at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:114) at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:75) at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:61) at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:162) at org.openqa.selenium.remote.service.DriverCommandExecutor.invokeExecute(DriverCommandExecutor.java:216) at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:174) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:518) at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:232) at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:161) at org.openqa.selenium.chromium.ChromiumDriver.<init>(ChromiumDriver.java:114) at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:89) at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:84) at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:73) at com.test.org.Test.main(Test.java:18) > 任务 :Test.main() 失败 构建使用了已弃用的Gradle特性,导致与Gradle 9.0不兼容。 可以使用'--warning-mode all'显示单个弃用警告,确定它们来自您自己的脚本还是插件。 3个可执行任务:2个已执行,1个最新 失败:构建因异常而失败。 * 出错原因: 任务':Test.main()'执行失败。 > 进程'命令'C:\Program Files\Java\jdk-11\bin\java.exe''以非零退出值1结束
执行结果截图

解决方案
- 移除
--remote-debugging-pipe参数:本地直接启动Chrome时无需此参数,它会干扰调试通道建立,引发超时。 - 匹配ChromeDriver与Chrome版本:Selenium 4.19.1默认绑定的ChromeDriver可能不兼容Chrome 123,手动下载对应版本的ChromeDriver,确保版本完全一致。
- 延长超时时间:在ChromeOptions中添加超时配置,或调整驱动的页面加载、脚本超时时间,比如设置为120秒。
- 清理Chrome缓存:关闭所有Chrome进程,删除用户数据目录(默认路径:
C:\Users\<你的用户名>\AppData\Local\Google\Chrome\User Data),避免缓存冲突导致启动异常。 - 替换
driver.close()为driver.quit():close()仅关闭当前窗口,quit()会彻底终止浏览器进程,避免残留进程影响后续启动。
修改后的示例代码
package com.test.org; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import java.time.Duration; public class Test { public static void main(String[] args) { ChromeOptions options = new ChromeOptions(); options.addArguments("--disable-dev-shm-usage"); // 解决资源限制问题 options.addArguments("start-maximized"); // 最大化窗口启动 options.addArguments("disable-infobars"); // 禁用信息栏 options.addArguments("--disable-extensions"); // 禁用扩展 options.addArguments("--disable-gpu"); // Windows系统适用 options.addArguments("--no-sandbox"); // 绕过系统安全模型 // 延长脚本超时时间 options.setScriptTimeout(Duration.ofSeconds(120)); WebDriver driver = new ChromeDriver(options); // 设置页面加载超时 driver.manage().timeouts().pageLoadTimeout(Duration.ofSeconds(120)); String baseUrl = "http://demo.guru99.com/test/newtours/"; String expectedTitle = "Welcome: Mercury Tours"; String actualTitle = ""; driver.get(baseUrl); actualTitle = driver.getTitle(); if (actualTitle.contentEquals(expectedTitle)){ System.out.println("com.test.org.Test Passed!"); } else { System.out.println("com.test.org.Test Failed"); } // 彻底关闭浏览器进程 driver.quit(); } }
内容的提问来源于stack exchange,提问作者SeleniumUser
相关产品推荐
相关产品推荐

