Selenium FirefoxDriver抛出IllegalStateException

时间:2017-06-06 10:06:47

标签: java selenium selenium-webdriver

Exception in thread "main" java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.gecko.driver system property; for more information, see https://github.com/mozilla/geckodriver. The latest version can be downloaded from https://github.com/mozilla/geckodriver/releases
    at com.google.common.base.Preconditions.checkState(Preconditions.java:199)
    at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:109)
    at org.openqa.selenium.firefox.GeckoDriverService.access$000(GeckoDriverService.java:37)
    at org.openqa.selenium.firefox.GeckoDriverService$Builder.findDefaultExecutable(GeckoDriverService.java:95)
    at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:296)
    at org.openqa.selenium.firefox.FirefoxDriver.createCommandExecutor(FirefoxDriver.java:277)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:247)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:242)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:238)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:127)
    at Pack1.L1.main(L1.java:10)

程序:

package Pack1;

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

public class L1 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        WebDriver driver= new FirefoxDriver();

        driver.get("https://mail.google.com/");
    }
}

1 个答案:

答案 0 :(得分:0)

对于当前版本的selenium,您需要设置geckodriver exe路径以使用FireFoxDriver

运行脚本

所以下载geckodriver exe from here

并在您的代码中进行设置,如:

System.setProperty("webdriver.gecko.driver","D:\\geckodriver.exe");
WebDriver driver= new FirefoxDriver();