Selenium 3.7:geckodriver:WebDriverException:org.apache.http.conn.HttpHostConnectException连接被拒绝

最近我升级到了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(); } 

包含的图书馆:

selenium的Java-3.7.1 /selenium服务器独立-3.7.1.jar

selenium – java的3.7.1 /库/的HttpCore-4.4.6.jar

selenium – java的3.7.1 /库/ HttpClient的-4.5.3.jar

selenium – java的3.7.1 /库/番石榴23.0.jar

selenium – java的3.7.1 /库/ GSON-2.8.2.jar

selenium的Java-3.7.1 /库/共享记录-1.2.jar

selenium的Java-3.7.1 /库/公地EXEC-1.3.jar

selenium的Java-3.7.1 /库/公地编解码器1.10.jar

selenium – java的3.7.1 /库/字节的好友-1.7.5.jar

selenium – java的3.7.1 /客户端联合3.7.1.jar

selenium – java的3.7.1 /客户端联合3.7.1-sources.jar

系统环境:

Firefox 56.0.2

Java 1.8

selenium的Java-3.7.1

selenium的服务器独立-3.7.1

geckodriver – v0.19.1

错误跟踪日志:

用法:

/ usr / local / bin / geckodriver [OPTIONS] / usr / local / bin / geckodriver:未知选项–port = 8970线程“main”中的exceptionorg.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’驱动程序信息:驱动程序.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(); } 

包括图书馆:

selenium的服务器独立-3.7.1.jar

系统环境:

Firefox 56.0.2

Java 1.8

selenium的Java-3.7.1

selenium的服务器独立-3.7.1

geckodriver 0.19.1

Mac OS X’,os.arch:’x86_64’,os.version:’10 .12.6′

错误跟踪日志:

调试1调试2在端口2198上启动ChromeDriver 2.33.506106(8a06c39c4582fbfbab6966dbb1c38a9173bfb1a2)仅允许本地连接。 线程“main”中的exceptionorg.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:位于org.openqa.selenium的org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:192)的Chrome驱动程序位于org.openqa.selenium.remote.service.DriverService.start(DriverService.java:178)。位于org.openqa.selenium.remote的Remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:79)org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:Remote) 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)a t AutomationFrameWork.FirstTestCase.main(FirstTestCase.java:13)引起:org.openqa.selenium.net.UrlChecker $ TimeoutException:超时等待[ http:// localhost:2198 / status]在20005 ms之后可用org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:100)at org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:187)… 9更多引起:java.util位于org.openqa.selenium.net的com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:147)的java.util.concurrent.FutureTask.get(FutureTask.java:205)中的.concurrent.TimeoutException .UrlChecker.waitUntilAvailable(UrlChecker.java:75)……还有10个

错误WebDriverException: org.apache.http.conn.HttpHostConnectException: Connect to localhost:8970由于不同的原因,可能会发生WebDriverException: org.apache.http.conn.HttpHostConnectException: Connect to localhost:8970 。 由于selenium-server-standalone-3.7.1.jar从未成为下载的selenium-java-3.7.1.zip的一部分,因此您的Included Library列表中存在差异。

尝试下面提到的步骤:

  • 从“ Included Library列表中删除所有jars
  • 从此this linkthis link Download Add selenium-server-standalone-3.7.1.jar
  • 确保系统上的/etc/hosts包含以下条目:

     1 127.0.0.1 localhost.localdomain localhost 
  • 运行CCleaner Tool以擦除系统中的所有OS杂项。

  • 您可以选择System Reboot
  • 执行你的Test

我尝试使用相同的版本没有任何问题。

如果是geckodriver的路径:

 System.setProperty("webdriver.gecko.driver", "/usr/local/bin/geckodriver"); 

是正确的,请确保geckodriver对于执行代码的用户是可执行的:

 chmod +x geckodriver 

做了一些研究后,我设法解决了这个问题。

该错误是由于在etc / hosts中映射到localhost.com的127.0.0.1。 编辑:127.0.0.1 localhost

我想你错过了.exe扩展名。 你的道路应该是这样的

 System.setProperty("webdriver.gecko.driver", "/usr/local/bin/geckodriver.exe");