Firefox 48和Selenium超时问题

时间:2016-09-07 06:43:43

标签: java selenium selenium-webdriver firefox-marionette

我无法使用最新的Selenium版本( 2.53,Selenium 3 beta )在 Firefox 48 上运行测试。

请解释所需的配置以及用于在Firefox 48上成功运行测试的代码。我已经指出了geckodriver并试图在我的代码中初始化它。

代码

System.setProperty("webdriver.gecko.driver","E:\\Work\\Selenium\\geckodriver-v0.9.0-win64\\geckodriver.exe");
WebDriver driver = null;
driver = new MarionetteDriver();

获取以下内容

org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output:

3 个答案:

答案 0 :(得分:1)

为我工作:

System.setProperty("webdriver.gecko.driver", "PATH TO GECKO DRIVER");
DesiredCapabilities ffCapabilities = DesiredCapabilities.firefox();
ffCapabilities.setCapability("marionette",true);
WebDriver driver = new FirefoxDriver(ffCapabilities);

答案 1 :(得分:0)

您需要撰写DesiredCapabilities。在驱动程序初始化之前添加此行

DesiredCapabilities cap = DesiredCapabilities.firefox()

答案 2 :(得分:0)

您可以从链接下载geckodriver https://github.com/mozilla/geckodriver/releases 然后将文件保存在本地系统中。解压缩文件并将应用程序名称更改为“wires.exe”。 然后在代码中指定upto wires.exe的路径。

添加selenium-2.53.0 jar文件。

尝试以下代码开始使用FF 47.0或更高版本。

package com.marionette.programs;

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

公共类HandleLatestFirefox {

public static void main(String[] args) {
    String currentDir = System.getProperty("user.dir");
    System.out.println(currentDir);
    //String marionetteDriverLocation = currentDir + "G:\\ravik\\Ravi-Training\\Selenium\\Marionette for firefox\\wires.exe";
    System.setProperty("webdriver.gecko.driver", "G:\\ravik\\Ravi-Training\\Selenium\\Marionette for firefox\\wires.exe");
    WebDriver driver = new MarionetteDriver();
    driver.get("https://www.google.co.in/webhp?hl=en&sa=X&ved=0ahUKEwjdgc21jJHOAhVCvY8KHZ4aCdcQPAgD");
    System.out.println("marionette working fine....");

}

}