我是Mac OSX的新手。从git下载了我的Robotframework(Selenium&Java)项目,并尝试在本地执行代码,其中收到以下错误。
套件安装失败:IllegalStateException:驱动程序不可执行:/ Users / roja / Documents / GitHub / testautomation / chromedrivers / chromedriver_osx
为了解决这个问题,我按照以下步骤进行操作,但没有成功。
将selenium-java和独立版本从2.53.1升级到3.4.0。 指定给Users / roja / automation的驱动程序路径 Chromedriver从2.31升级到2.33 并且即使在上述例外中指定的路径中,相同的驱动程序版本也会更新。
还不确定为什么默认路径为/Users/roja/Documents/GitHub/testautomation/chromedrivers/chromedriver_osx。
/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: The driver is not executable: /Users/roja/Documents/GitHub/testautomation/chromedrivers/chromedriver_osx说明了一切。您必须进行以下4个更改:
IllegalStateException: The driver is not executable: /Users/roja/Documents/GitHub/testautomation/chromedrivers/chromedriver_osx
更改Webdriver.chrome.driver为:
Webdriver.chrome.driver
webdriver.chrome.driver
更改,/Users/roja/Automation/chromedriver_osx因为我们需要将webdriver binaryie 的名称包括 chromedriver 为 value :
/Users/roja/Automation/chromedriver_osx
webdriver binary
chromedriver
value
/Users/roja/Automation/chromedriver_osx/chromedriver
更改driver = new ChromeDriver();为:
driver = new ChromeDriver();
WebDriver driver = new ChromeDriver();
删除不需要的内容throws InterruptedException以使您的代码简短明了。
throws InterruptedException