Selenium没有使用geckodriver 10.0打开firefox - 无法访问浏览器异常

时间:2016-09-29 23:48:54

标签: java eclipse selenium geckodriver

我在使用Selenium打开Firefox时遇到了一些困难。它在家里的电脑上工作,但我不知道为什么它在我的工作电脑上不起作用。一些帮助和指导将非常感激,因为我是这个工具的新手和日食。

我已经下载了geckodriver 10并且正在使用Eclipse Neon运行Selenium 3。我将selenium-server-standalone-3.0.0-beta3导入了我的测试Selenium项目的Java Build Path。

我的代码如下:

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class openBrowser {

public static void main(String[] args) {


    System.setProperty("webdriver.gecko.driver", "D:\\JW\\Selenium\\geckodriver-v0.8.0-win32\\geckodriver.exe");

    WebDriver driver = new FirefoxDriver();
    driver.get("https://www.google.com");


}

}

当我运行程序时,我在控制台中获得以下内容:

Sep 30, 2016 10:42:18 AM org.openqa.selenium.remote.ProtocolHandshake createSession

信息:尝试双方言会议,假设Postel法则适用于远程端 线程“main”中的异常org.openqa.selenium.remote.UnreachableBrowserException:无法启动新会话。可能的原因是远程服务器的无效地址或浏览器启动失败。 构建信息:版本:'3.0.0-beta3',修订版:'c7b525d',时间:'2016-09-01 14:57:03 -0700' 系统信息:主机:'SBC-40489825',ip:'10 .27.20.46',os.name:'Windows 7',os.arch:'x86',os.version:'6.1',java.version:'1.8 .0_73'

我运行该程序,但firefox似乎永远不会打开,因为连接似乎被拒绝任何想法都错了?

最好的问候

塔尔坎

4 个答案:

答案 0 :(得分:1)

尝试使用Marrionatedriver,它会使用。以下是代码:

WebDriver driver = new MarrionateDriver();

答案 1 :(得分:0)

我建议您不要使用beta版本,直到Selenium3的最终稳定版本未发布可能会有很多错误需要解决。

您应该将您的selenium版本降级为Selenium2的上一个稳定版本。

由于Selenium2在不使用GeckoDriver午餐Mozilla Firefox < v47的情况下效果很好,因此您应该将其降级到v47以下,以摆脱这些问题,直到最终版本为{{} 3}}没有被释放。

答案 2 :(得分:0)

此问题特定于Ge​​ckodriver Windows32位。

GeckoDriver不支持Windows 32Bit,他们尚未发布Geckodriver V0.11版本。您检查版本Milestone status

您还可以查看有关此问题的讨论here上次评论

这是解释此问题的article

更新:Geckodriver V0.11版本发布。请尝试使用此版本。

答案 3 :(得分:0)

这有效

System.setProperty("webdriver.firefox.marionette",D:\\JW\\Selenium\\geckodriver-v0.8.0-win32\\geckodriver.exe);