我使用以下代码运行chrome驱动程序:
import org.openqa.selenium.*;
import org.openqa.selenium.chrome.ChromeDriver;
public class TestClass
{
public static void main(String[] args){
System.setProperty("webdriver.chrome.driver", "/Users/raisa/Documents/Selenium/chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://www.google.com");
driver.quit();
}
}
但是我收到了这个错误:
Exception in thread "main" java.lang.IllegalStateException: The driver executable does not exist: /Users/raisa/Documents/Selenium/chromedriver.exe
at com.google.common.base.Preconditions.checkState(Preconditions.java:177)
at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:117)
at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:112)
at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:89)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:117)
at TestClass.main(TestClass.java:11)
下载了最新的Chrome驱动程序
答案 0 :(得分:3)
我同意这些意见。
在Mac OS上,.exe
之后不会需要chromedriver
。
对于您的示例,您希望它看起来像这样:/Users/raisa/Documents/Selenium/chromedriver
。
我也看到了这个问题,因为没有为文件设置执行权限。 因此,仔细检查文件权限,以及文件是否在给定的实际路径中。
答案 1 :(得分:0)
通过终端导航到chromedriver所在的地方,然后执行以下命令。
xattr -d com.apple.quarantine chromedriver