最近我升级到了Selenium 3.7。
代码:
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public static void main (String args[]){
System.setProperty("webdriver.gecko.driver",
"/usr/local/bin/geckodriver");
WebDriver driver = new FirefoxDriver();
driver.get("http://www.google.com");
driver.quit();
}
包含的图书馆:
硒 - java的3.7.1 /硒 - 服务器 - 独立-3.7.1.jar
硒 - java的3.7.1 /库/的HttpCore-4.4.6.jar
硒 - java的3.7.1 /库/ HttpClient的-4.5.3.jar
硒 - java的3.7.1 /库/番石榴23.0.jar
硒 - java的3.7.1 /库/ GSON-2.8.2.jar
硒 - java的3.7.1 /库/共享记录-1.2.jar
硒 - java的3.7.1 /库/公地EXEC-1.3.jar
硒 - java的3.7.1 /库/公地编解码器1.10.jar
硒 - java的3.7.1 /库/字节的好友-1.7.5.jar
硒 - java的3.7.1 /客户端联合3.7.1.jar
硒 - java的3.7.1 /客户端联合3.7.1-sources.jar
系统环境:
Firefox 56.0.2
Java 1.8
硒 - java的3.7.1
硒 - 服务器 - 独立-3.7.1
geckodriver - v0.19.1
错误跟踪日志:
用法:
/ usr / local / bin / geckodriver [OPTIONS] / usr / local / bin / geckodriver: 未知选项--port = 8970线程中的异常" main" org.openqa.selenium.WebDriverException: org.apache.http.conn.HttpHostConnectException:连接到 localhost:8970 [localhost / 0:0:0:0:0:0:0:1, localhost / fe80:0:0:0:0:0:0:1%1]失败:连接被拒绝(连接 拒绝建立信息:版本:' 3.7.1',修订版:' 8a0099a',时间: ' 2017-11-06T21:07:36.161Z'系统信息:主持人: ' Maggies-MacBook-Pro-2.local',ip:' 192.168.1.6',os.name:' Mac OS X', os.arch:' x86_64',os.version:' 10.12.6',java.version:' 1.8.0_121' 驱动程序信息:driver.version:FirefoxDriver
任何想法都会受到赞赏。谢谢。
尝试Debanjan建议后更新:
代码:
public static void main (String args[]){
System.out.println("Debug 1");
System.setProperty("webdriver.gecko.driver",
"/Users/maggie/Documents/ToolsQA/Libs/geckodriver");
System.out.println("Debug 2");
WebDriver driver = new FirefoxDriver();
System.out.println("Debug 3");
driver.get("http://www.google.com");
driver.quit();
}
包含图书馆:
硒 - 服务器 - 独立-3.7.1.jar
系统环境:
Firefox 56.0.2
Java 1.8
硒 - java的3.7.1
硒 - 服务器 - 独立-3.7.1
geckodriver 0.19.1
Mac OS X',os.arch:' x86_64',os.version:' 10.12.6'
错误跟踪日志:
Debug 1 Debug 2启动ChromeDriver 2.33.506106 (8a06c39c4582fbfbab6966dbb1c38a9173bfb1a2)在2198港口 允许连接。线程" main"中的例外情况 org.openqa.selenium.WebDriverException:等待驱动程序超时 服务器启动。构建信息:版本:' 3.7.1',修订版:' 8a0099a', 时间:' 2017-11-06T21:07:36.161Z'系统信息:主持人: ' Maggies-MacBook-Pro-2.local',ip:' 192.168.1.6',os.name:' Mac OS X', os.arch:' x86_64',os.version:' 10.12.6',java.version:' 1.8.0_121' 驱动程序信息:driver.version:ChromeDriver at org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:192) 在 org.openqa.selenium.remote.service.DriverService.start(DriverService.java:178) 在 org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:79) 在 org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:600) 在 org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:219) 在 org.openqa.selenium.remote.RemoteWebDriver。(RemoteWebDriver.java:142) 在 org.openqa.selenium.chrome.ChromeDriver。(ChromeDriver.java:181) 在 org.openqa.selenium.chrome.ChromeDriver。(ChromeDriver.java:168) 在 org.openqa.selenium.chrome.ChromeDriver。(ChromeDriver.java:123) 在AutomationFrameWork.FirstTestCase.main(FirstTestCase.java:13) 引起:org.openqa.selenium.net.UrlChecker $ TimeoutException:Timed 等待[http://localhost:2198/status]之后可用 20005毫秒 org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:100) 在 org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:187) ... 9更多引起:java.util.concurrent.TimeoutException at java.util.concurrent.FutureTask.get(FutureTask.java:205)at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:147) 在 org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:75) ......还有10个
答案 0 :(得分:1)
错误 WebDriverException: org.apache.http.conn.HttpHostConnectException: Connect to localhost:8970
可能由于不同原因而发生。
由于 Included Library
永远不属于已下载 selenium-server-standalone-3.7.1.jar
的一部分,因此selenium-java-3.7.1.zip
列表中存在差异。
尝试以下步骤:
答案 1 :(得分:0)
我尝试使用相同版本没有任何问题。
如果是geckodriver的路径:
System.setProperty("webdriver.gecko.driver",
"/usr/local/bin/geckodriver");
是正确的,请确保geckodriver对执行代码的用户是可执行的:
chmod +x geckodriver
答案 2 :(得分:0)
在做了一些研究之后,我设法解决了这个问题。
该错误是由于在etc / hosts中将127.0.0.1映射到localhost.com。 编辑: 127.0.0.1 localhost
答案 3 :(得分:-1)
我认为你错过了.exe扩展名。你的路径应该是这样的
System.setProperty("webdriver.gecko.driver",
"/usr/local/bin/geckodriver.exe");