首页 > 解决方案 > 如何修复 [1573451709.039][警告]:连接到 Chrome 时超时,正在重试...同时使用 chrome 版本 78 和 chrome 驱动程序版本 78.0.3904.70

问题描述

我的 Chrome 浏览器已更新到版本 78,当我尝试执行任何自动化代码时,它显示错误

Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
[1573451703.668][WARNING]: Timed out connecting to Chrome, retrying...
Nov 11, 2019 11:25:05 AM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
[1573451709.039][WARNING]: Timed out connecting to Chrome, retrying...

我该如何解决?

标签: javaseleniumgoogle-chromeselenium-chromedriverchrome-web-driver

解决方案


此错误消息...

Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
[1573451703.668][WARNING]: Timed out connecting to Chrome, retrying...
Nov 11, 2019 11:25:05 AM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
[1573451709.039][WARNING]: Timed out connecting to Chrome, retrying...

...意味着ChromeDriver无法启动/生成新的WebBrowser ,即Chrome 浏览器会话。


分析

第一条日志消息:

Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.

是使用ChromeDriver时启动日志的一部分,本质上是信息丰富的。

您可以在如何保护 chromedriver 使用的端口?


以下日志消息:

[1573451703.668][WARNING]: Timed out connecting to Chrome, retrying...

表示您使用的二进制文件版本之间存在一些不兼容。


解决方案

确保这件事:

  • JDK升级到当前级别JDK 8u222
  • Selenium升级到当前级别版本 3.141.59
  • ChromeDriver已更新到当前的ChromeDriver v78.0级别。
  • Chrome已更新到当前的Chrome 版本 78.0级别。(根据ChromeDriver v78.0 发行说明
  • 通过IDE清理项目工作区并仅使用所需的依赖项重建项目。
  • 仅限Windows 操作系统)使用CCleaner工具在执行测试套件之前和之后清除所有操作系统琐事。
  • 仅限 LinuxOS)在执行测试套件之前和之后释放和释放 Ubuntu/Linux Mint 中未使用的/缓存的内存
  • 如果您的基本Web 客户端版本太旧,请卸载它并安装最新的 GA 和已发布版本的Web 客户端
  • 重新启动系统
  • @Test非 root用户身份执行。
  • 始终driver.quit()tearDown(){}方法内调用以优雅地关闭和销毁WebDriverWeb Client实例。

推荐阅读