org.openqa.selenium.WebDriverException:chrome无法访问 - 尝试启动新会话时

时间:2018-01-18 14:41:59

标签: java google-chrome selenium-webdriver webdriver selenium-chromedriver

当我在Chrome上运行测试时,我经常会遇到无法访问Chrome的WebdriverException。它不会每次都发生。也许每15次一次。我不得不在Windows机器上运行所有东西,我有最新的Chrome,Chromedriver,Selenium-Webdriver版本。

我尝试过设置环境变量“DBUS_SESSION_BUS_ADDRESS = / dev / null”。根本没有帮助。

有人遇到这个并找到了解决方案吗?

org.openqa.selenium.WebDriverException: chrome not reachable
  (Driver info: chromedriver=2.35.528161 (5b82f2d2aae0ca24b877009200ced9065a772e73),platform=Windows NT 6.1.7601 SP1 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 62.52 seconds
Build info: version: '2.52.0', revision: '4c2593cfc3689a7fcd7be52549167e5ccc93ad28', time: '2016-02-11 11:22:43'
System info: host: 'CORPMNA7158A', ip: '10.26.195.163', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_144'
Driver info: org.openqa.selenium.chrome.ChromeDriver

1 个答案:

答案 0 :(得分:2)

错误确实给了我们一些提示:

org.openqa.selenium.WebDriverException: chrome not reachable

这实质上意味着chromedriver二进制文件无法生成新的Chrome Browser进程。

您的主要问题是您使用的二进制文件中的版本兼容性,如下所示:

  • 您正在使用 chromedriver=2.35.528161 (已发布2018-01-10
  • chromedriver=2.35的发行说明明确提及以下内容:
  

<强> Supports Chrome v62-64

  • 您提到过使用最新的Chrome。我认为它是 chrome=65.x
  • 您正在使用 Selenium Version 2.52.0 (已发布 2016-02-11 11:22:43 )[as per the error stack trace within your question]

因此, Selenium Version 2.52.0 chromedriver=2.35.528161 的发布之间的时间差距几乎是 2年,而不是兼容。因此 ChromeDriver 有时无法生成新的Chrome Browser进程。

解决方案

  • ChromeDriver保持在 v2.35 级别。
  • Chrome降级为稳定的 Chrome v64.x 级别。 (as per ChromeDriver v2.35 release notes
  • Selenium升级到当前级别 Version 3.8.1
  • 执行Test