3

我刚开始学习Selenium Java。我正在使用Selenium Beta 3and运行我的脚本Mozilla Firefox v43。这是我的代码`

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class RegistrationFirefox {

    public static void main(String[] args) 
    {
        System.setProperty("webdriver.gecko.driver", "C:\\SeleniumDrivers\\geckodriver.exe");
        WebDriver driver = new FirefoxDriver();

        driver.get("http://www.google.com");
        System.out.println(driver.getTitle());
        driver.manage().window().maximize();    
        driver.close();
    }    
}

最初我收到有关的错误

“线程“主”java.lang.IllegalStateException 中的异常:驱动程序可执行文件的路径必须由 webdriver.gecko.driver 设置

安装后geckodriver这是我得到的错误(上面提到的代码)

线程“主”org.openqa.selenium.WebDriverException 中的异常:不支持的 Marionette 协议版本 2,需要 3(警告:服务器未提供任何堆栈跟踪信息)命令持续时间或超时:5.26 秒

4

1 回答 1

4

“线程“主”java.lang.IllegalStateException 中的异常:驱动程序可执行文件的路径必须由 webdriver.gecko.driver 设置

实际上Selenium 3支持Mozilla Firefox使用geckodriver可执行文件,就像其他驱动程序支持一样。这就是你得到这个例外的原因。

要解决此问题,您需要将此可执行文件设置为您已经完成的geckodriver系统属性。webdriver.gecko.driver

线程“主”org.openqa.selenium.WebDriverException 中的异常:不支持的 Marionette 协议版本 2,需要 3(警告:服务器未提供任何堆栈跟踪信息)命令持续时间或超时:5.26 秒

现在问题是你的Mozilla版本。实际上可执行文件geckodriver支持Mozilla Firefox >= v47这就是你得到这个异常的原因。

要解决此问题,您还需要升级Mozilla Firefox >= v47

于 2016-09-27T17:48:48.807 回答