I have a set of automations that work fantastically in Firefox and Chrome, and I'd like to launch an instance of IEDriver as well. I've set up IEDriver as per Selenium's Google Code wiki, with the correct path (if I change the path I get a different exception, so it's definitely correct). But for some reason it still can't launch, and just times out. The code to launch it (the last line throws the exception): File ieDriver = new File("C:/Users/whatever/path/IEDriverServer.exe"); System.setProperty("webdriver.ie.driver", ieDriver.getAbsolutePath()); WebDriver ie = new InternetExplorerDriver(); And the exception is: 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.33.0', revision: '4ecaf82108b2a6cc6f006aae81961236eba93358', time: '2013-05-22 12:00:17' System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.7.0_21' Driver info: driver.version: InternetExplorerDriver at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:548) at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:216) at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:201) at org.openqa.selenium.ie.InternetExplorerDriver.run(InternetExplorerDriver.java:184) at org.openqa.selenium.ie.InternetExplorerDriver.<init>(InternetExplorerDriver.java:174) at org.openqa.selenium.ie.InternetExplorerDriver.<init>(InternetExplorerDriver.java:143) at uk.co.know.kiteTest.WebDriverManager.<init>(WebDriverManager.java:52) at uk.co.know.kiteTest.RunAutomations.main(RunAutomations.java:13) Caused by: org.openqa.selenium.WebDriverException: Timed out waiting for driver server to start. Build info: version: '2.33.0', revision: '4ecaf82108b2a6cc6f006aae81961236eba93358', time: '2013-05-22 12:00:17' System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.7.0_21' Driver info: driver.version: InternetExplorerDriver 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:527) ... 7 more Caused by: org.openqa.selenium.net.UrlChecker$TimeoutException: Timed out waiting for [http://localhost:38622/status] to be available after 20014 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
org.openqa.selenium.remote.UnreachableBrowserException: Error communicating with the remote browser
出現這種異常的問題官方給了兩種可能的原因:( 官方鏈接:http://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/remote/UnreachableBrowserException.html)
Indicates there was a problem communicating with the browser being controlled or the Selenium server. The most common causes for this exception are: 1.The provided server address to RemoteWebDriver is invalid, so the connection could not be established. 2.The browser has died mid-test.
第一種,是說遠程ip可能有問題,所有連接不上,這個應該歸為一大類,凡是連接其他PC都沒有問題,唯獨這台電腦有問題,那么毫無疑問,就是ip連接方面的問題。
第二種,瀏覽器的問題。
我的電腦是ping 都ping 不通,然后關閉掉遠程連接的機器的防火牆,ping 的通之后,再連接一下就成功了。
當然也有可能是程序有問題,可參見http://www.cnblogs.com/amosli/p/3409024.html這篇文章。