使用 Selenium Webdriver 的 IE 浏览器:"The driver executable is a directory"

IE Browser using Selenium Webdriver: "The driver executable is a directory"

我在尝试使用 Selenium Webdriver 启动 IE 浏览器时遇到以下错误。好像是什么问题?

Exception in thread "main" java.lang.IllegalStateException: The driver executable is a directory: D:\Bhavesh\Bhavesh_Data\Study\Selenium\IEDriverServer_x64_2.45.0
    at com.google.common.base.Preconditions.checkState(Preconditions.java:197)
    at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:119)
    at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:112)
    at org.openqa.selenium.ie.InternetExplorerDriverService.access(InternetExplorerDriverService.java:1)
    at org.openqa.selenium.ie.InternetExplorerDriverService$Builder.build(InternetExplorerDriverService.java:247)
    at org.openqa.selenium.ie.InternetExplorerDriver.setupService(InternetExplorerDriver.java:251)
    at org.openqa.selenium.ie.InternetExplorerDriver.<init>(InternetExplorerDriver.java:172)
    at org.openqa.selenium.ie.InternetExplorerDriver.<init>(InternetExplorerDriver.java:146)
    at first.IEDriver.main(IEDriver.java:11)

我认为设置可执行文件时可能存在问题 属性..

设置可执行文件属性如下

 File file = new File("C:/Seleniumjars/IEDriverServer.exe");
  System.setProperty("webdriver.ie.driver", file.getAbsolutePath());
  driver = new InternetExplorerDriver();      
 }

据我了解,当您为 IEDriver 位置设置 属性 时,您没有提到完整路径(包括 iedriver exe 的完整目录路径)

例如..考虑以下..

如果您将 IEDriverServer.exe 放在 "D:/IEdriver" 中,则必须按如下方式设置 属性:-

正确方法:- System.setProperty("webdriver.ie.driver", "D:/IEdriver/IEDriverServer.exe");

错误的做法:- System.setProperty("webdriver.ie.driver", "D:/IEdriver");

如果有帮助请告诉我

  1. 检查驱动程序路径,在 IDE 中右键单击驱动程序,然后将路径复制到文件夹
  2. 尝试将路径更改为如下内容(带反斜杠):

    System.setProperty("webdriver.chrome.driver", new File("C:\QA\neoAutomation\src\main\resources\drivers\chromedriver.exe") .getAbsolutePath()); return new ChromeDriver(getCapabilities(browser));

  1. 添加一个文件夹并添加所有需要的驱动程序。

  2. 现在从属性中复制驱动程序的路径并在设置 属性 示例中使用它。

    System.setProperty("webdriver.chrome.driver","C:\Users\arumugam\eclipse-workspace\FirstTestNG\driversdirector\chromedriver.exe");