我看到下面的错误,浏览器在两者之间断开连接。它只发生在铬上。我正在使用的硒版本是:
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
错误堆栈跟踪:
[1579632222.785][SEVERE]: Unable to receive message from renderer
org.openqa.selenium.WebDriverException: disconnected: not connected to DevTools
(Session info: chrome=79.0.3945.117)
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 'MBP15-PBJGH8.8x8.com', ip: 'fe80:0:0:0:1846:114d:10a6:bf26%en0', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.14.6', java.version: '1.8.0_201'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities {acceptInsecureCerts: false, browserName: chrome, browserVersion: 79.0.3945.117, chrome: {chromedriverVersion: 78.0.3904.70 (edb9c9f3de024..., userDataDir: /var/folders/mz/2_llwtkx31d...}, goog:chromeOptions: {debuggerAddress: localhost:54446}, javascriptEnabled: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: MAC, platformName: MAC, proxy: Proxy(), setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify}
Session ID: 3577826ba5ac2d089a34e17f9aa987c9
此错误消息...
org.openqa.selenium.WebDriverException: disconnected: not connected to DevTools
(Session info: chrome=79.0.3945.117)
.
.
Capabilities {acceptInsecureCerts: false, browserName: chrome, browserVersion: 79.0.3945.117, chrome: {chromedriverVersion: 78.0.3904.70 (edb9c9f3de024..., userDataDir: /var/folders/mz/2_llwtkx31d...}, goog:chromeOptions: {debuggerAddress: localhost:54446}, javascriptEnabled: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: MAC, platformName: MAC, proxy: Proxy(), setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify}
。暗示ChromeDriver无法启动/生成新的浏览上下文,即Chrome浏览器会话。
您的主要问题是您使用的二进制文件版本之间的不兼容,如下所示:
- 您正在使用的 chromedriver = 78.0
- chromedriver=78.0的发行说明明确提到了以下内容:
支持Chrome v78
- 您正在使用的 chrome=79.0
- ChromeDriver v79.0的发行说明明确提到了以下内容:
支持Chrome 79
因此,ChromeDriver v78.0和Chrome浏览器v79.0之间存在明显的不匹配
。溶液
确保:
- ChromeDriver已更新到当前的 ChromeDriver v79.0.3945.36 级别。 Chrome
- 已更新到当前的Chrome 版本 79.0级别。(根据 ChromeDriver v79.0 发行说明(
- 通过IDE清理项目工作中心,并仅使用所需的依赖项重新生成项目。
- 如果基本 Web 客户端版本太旧,请将其卸载并安装最新的 GA 和已发布版本的Web 客户端。
- 重新启动系统。
- 以非 root用户身份执行
@Test
。 - 始终在方法中调用
driver.quit()
tearDown(){}
以正常关闭和销毁WebDriver和Web 客户端实例。