java.lang.IllegalStateException:驱动程序可执行文件不存在 - Selenium Webdriver

时间:2017-03-08 04:11:14

标签: selenium selenium-webdriver webdriver illegalstateexception

尝试使用Selenium Webdriver运行基本测试代码时出现IllegalStateException。

这是我用eclipse编写的代码:

{
...
System.setProperty("webdriver.ie.driver","<Absolutepath>/IEDriverServer.exe");

WebDriver driver=new InternetExplorerDriver(); //This is the line which throws the exception 
...
}

异常追踪:

java.lang.IllegalStateException: The driver executable does not exist.

at com.google.common.base.Preconditions.checkState(Preconditions.java:518)
    at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:123) 

IEDriverServer.exe已从SeleniumHQ下载页面下载并放置在我的系统上(Windows 10)。

当我尝试使用Chrome驱动程序时,也会发生同样的异常。

我已经浏览了类似的帖子,但找不到能解决问题的东西。

1 个答案:

答案 0 :(得分:0)

您是否已添加路径的绝对路径?

Windows&gt;系统&gt;高级系统设置&gt;环境变量

在“系统变量”下,编辑“路径”并添加WebDriver.exe所在的文件夹

如果您正在寻找一个漂亮的跨浏览器插件,请将以下依赖项添加到您的pom.xml中,它将为您处理所有事情:

<dependency>
            <groupId>io.github.bonigarcia</groupId>
            <artifactId>webdrivermanager</artifactId>
            <version>1.6.0</version>
            <exclusions>
                <exclusion>
                    <groupId>com.google.guava</groupId>
                    <artifactId>guava</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

然后使用:

 ChromeDriverManager.getInstance().setup();
 WebDriver driver = new ChromeDriver();

 InternetExplorerDriverManager.getInstance().setup();
 WebDriver driver = new InternetExplorerDriver();

我在Windows 10和IE11中运行selenium webdriver时遇到了很多问题。如果你没有,我会切换到Chrome。更容易。