java – Mac OSX – IllegalStateException:驱动程序不可执行:

我是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();
}

解决方法:

错误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-Robot Framework无法正确识别属性值更改


下一篇:是否可以在不安装Python的情况下为RobotFramework安装Selenium2Library?