我有以下问题/问题:我使用笔记本自动化。现在我买了一个Ultrabook Mac。
我对所有项目进行了自动化的所有项目。但是,当我运行它时,我会收到以下错误:
java.lang.IllegalStateException: The driver executable does not exist: /Users/estevaomarcos/Documents/Projetos/DBServer/Userschromedriver
在我的代码中是以下内容:
System.setProperty("webdriver.chrome.driver", "\Users\chromedriver");
WebDriver browser = new ChromeDriver(); .....
设置驱动程序路径:为了避免手动检查操作系统,我们可以使用file.separator键从系统属性中获取文件分离器符号。
System.setProperty("webdriver.chrome.driver", "Users" + System.getProperty("file.separator") + "chromedriver");
WebDriver browser = new ChromeDriver();
browser.get("test.com");
设置驱动程序路径,基于操作系统(OS(我们正在运行的驱动程序路径。
String os = System.getProperty("os.name").toLowerCase();
WebDriver driver = new ChromeDriver();
if(os.contains("mac")) {
System.setProperty("webdriver.chrome.driver", System.getProperty("usr.home") + System.getProperty("file.separator") + "chromedriver");
}else {
System.setProperty("webdriver.chrome.driver", System.getProperty("usr.home") + System.getProperty("file.separator") + "chromedriver.exe");
}
- 在基于操作系统的代码中,您应该在System.SetProperty设置之后初始化新的Chromedriver。
- user.home是正确的选项 - 不是usr'最后,当看起来像这样时,它很棒:
String os = System.getProperty("os.name").toLowerCase();
if (os.contains("mac")) {
System.setProperty("webdriver.chrome.driver", System.getProperty("user.home") + System.getProperty("file.separator") + "chromedriver");
} else {
System.setProperty("webdriver.chrome.driver", System.getProperty("user.home") + System.getProperty("file.separator") + "chromedriver.exe");
}
WebDriver driver = new ChromeDriver();