java - Mac OSX - IllegalStateException : The driver is not executable:

标签 java macos selenium selenium-chromedriver robotframework

我是 Mac OSX 新手。从 git 下载了我的 Robotframework(Selenium 和 Java)项目并尝试在本地执行代码,其中我收到了以下错误。

套件设置失败: IllegalStateException:驱动程序不可执行:/Users/roja/Documents/GitHub/testautomation/chromedrivers/chromedriver_osx

为了解决这个问题,我按照以下方法操作,但没有成功。

  1. Upgraded the selenium-java and standalone version from 2.53.1 to 3.4.0.
  2. Driver path specified to Users/roja/automation
  3. Chromedriver upgraded from 2.31 to 2.33
  4. And the same driver version updated even in the path specified in the exception above.

我也不确定为什么路径默认为 /Users/roja/Documents/GitHub/testautomation/chromedrivers/chromedriver_osx

我的git项目保存在usr/local/git/testautomation路径中,chromedriver也保存在同一路径中。请澄清并给我一个解决方案。

下面为启动浏览器编写的代码,

public void LaunchBrowser() throws InterruptedException {
System.setProperty("Webdriver.chrome.driver", "/Users/roja/Automation/chromedriver_osx");
driver = new ChromeDriver();
driver.manage().window().maximize();
}

最佳答案

Quick installation最新的 ChromeDriver

安装最新版本ChromeDriver :

  • 使用 Homebrew 的 Mac 用户:

    brew tap homebrew/cask && brew cask install chromedriver
    
<小时/>

原始回答于 2017 年 11 月 15 日 12:04

错误IllegalStateException:驱动程序不可执行:/Users/roja/Documents/GitHub/testautomation/chromedrivers/chromedriver_osx说明了一切。您必须进行如下 4 项更改:

  • Webdriver.chrome.driver 更改为:

    webdriver.chrome.driver
    
  • 更改/Users/roja/Automation/chromedriver_osx,因为我们需要包含webdriver二进制文件的名称,即chromedriver作为:

    /Users/roja/Automation/chromedriver_osx/chromedriver
    
  • driver = new ChromeDriver(); 更改为:

    WebDriver driver = new ChromeDriver();
    
  • 删除不需要的抛出 InterruptedException 以保持代码简短。

关于java - Mac OSX - IllegalStateException : The driver is not executable:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60606521/

相关文章:

c# - 如何使用 Selenium Driver 检测页面是否水平溢出?

java - Selenium:将 WebElement 添加到列表中,然后检查所有元素的可见性

selenium - driver.quit() 不会关闭浏览器窗口

java - 登录 Java 的最快方法是什么?

java - 访问器方法是否应该检查调用对象在 java 中是否为 null?

java - 如何将 java 8 添加到 eclipse

c# - 如何在 Xamarin 中填充 TableView ?

java - Android JAVA RX 异常仅来自 Play 商店

python - 如何在 Mac OS X * 和 * Debian 上使用 SysLogHandler 或 syslog 从 Python 登录到 syslog (7)

java - "Fix"Java 应用程序窗口在辅助监视器分离时隐藏