由于Selenium中的看门狗超时问题,Chrome实例无法打开

时间:2014-11-12 03:51:58

标签: java google-chrome selenium

我运行测试套件时从今天起收到以下错误。我正在使用chrome驱动程序,因为我们的应用程序仅在chrome上运行相同的脚本在另一台机器上运行良好。

Starting ChromeDriver 2.12.301325 (962dea43ddd90e7e4224a03fa3c36a421281abb7) on port 37280
Only local connections are allowed.
Nov 12, 2014 11:33:36 AM org.openqa.selenium.os.UnixProcess$SeleniumWatchDog destroyHarder
INFO: Command failed to close cleanly. Destroying forcefully (v2).org.openqa.selenium.os.UnixProcess$SeleniumWatchDog@1c06d198
Exception in thread "main" org.openqa.selenium.remote.UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
Build info: version: '2.41.0', revision: '3192d8a', time: '2014-03-27 17:18:15'
System info: host: 'MyTerminal', ip: '10.54.205.137', os.name: 'Windows 7', os.arch: 'amd64',  os.version: '6.1', java.version: '1.7.0_51'
Driver info: driver.version: ChromeDriver
   at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:589)
   at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:240)
   at org.openqa.selenium.chrome.ChromeDriver.startSession(ChromeDriver.java:181)
   at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:126)
   at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:139)
   at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:160)
   at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:128)
   at ChromeTest.main(ChromeTest.java:14)
Caused by: org.openqa.selenium.WebDriverException: Timed out waiting for driver server to start.
Build info: version: '2.41.0', revision: '3192d8a', time: '2014-03-27 17:18:15'
System info: host: 'MyTerminal', ip: '10.54.205.137', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.7.0_51'
Driver info: driver.version: ChromeDriver
   at org.openqa.selenium.remote.service.DriverService.start(DriverService.java:165)
   at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:62)
   at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:568)
   ... 7 more
Caused by: org.openqa.selenium.net.UrlChecker$TimeoutException: Timed out waiting for [http://localhost:37280/status] to be available after 20001 ms
   at org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:104)
   at org.openqa.selenium.remote.service.DriverService.start(DriverService.java:163)
   ... 9 more
Caused by: com.google.common.util.concurrent.UncheckedTimeoutException: java.util.concurrent.TimeoutException
   at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:143)
   at org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:79)
   ... 10 more
Caused by: java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask.get(FutureTask.java:201)
   at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:130)
   ... 11 more

我使用了以下故障排除步骤。 1.尝试禁用chrome中的gpu-watchdog 2.重新安装Chrome 3.从git hub重新克隆了我的所有项目 4.安装旧版本。

我没有运气这么做。有人可以指出我正确的方向如果我在这里遗漏了一些东西。

我关注的是这些脚本一直运行到昨天,突然间我收到了这个错误。

先谢谢。

1 个答案:

答案 0 :(得分:0)

在用完了所有可能的选项之后,我终于找到了一个解决方案。我玩Chrome驱动程序版本的技巧,但不知道为什么以及如何工作。我已按照这些步骤进行操作

  1. 我已经下载了最新版本的chrome驱动程序并运行了我的 通过配置System.setProperty()

  2. 进行硒测试
  3. 现在我双击旧的Chrome驱动程序版本(我已将它用于我的 在运行我的selenium脚本的同时运行脚本。

  4. 然后我将脚本配置回旧版本。

  5. 这就是我的脚本运行顺利,没有任何例外。 : - )