我创建了这样的chrome驱动程序:
System.setProperty("webdriver.chrome.driver",
"C:\\Users\\ragnar_000\\IdeaProjects\\ProjectA\\src\\test\\resources\\chromedriver.exe");
webDriver = new ChromeDriver();
此代码是在Windows平台上编写的。当我在Mac上运行它时,我必须根据Mac平台编辑路径。
如何设置/检查路径以便它可以在所有平台上运行,就像它只需要路径src / test / resources / chromedrivers.exe
答案 0 :(得分:0)
回答这个问题的两种方法: 第一:使用绝对路径。
Paths.get("." + File.separator + "folder" + File.separator + "chromedriver.exe"); //local project folder
Paths.get(System.getProperty("user.home") + File.separator + "folder" +
File.separator + "chromedriver.exe"); //file in folder in user home dircetory
这是一个非常具有共性的问题。 Googleit。
第二种方式:此设置需要存储在项目* .properties文件中,并在每个平台上重新加载此属性而无需重写测试源代码。任何路径都像" ... driver.exe"在unix或mac上不适用。这种方式也提供了带有驱动程序路径字符串的可用性运行测试。
希望它有所帮助。
答案 1 :(得分:0)
在项目下创建一个文件夹,并将chromedriver.exe复制到该文件夹(例如:/resources/chromedrivers.exe)。
然后按
设置该文件夹的路径String path = System.getProperty("user.dir");
System.out.println(path);
System.setProperty("webdriver.chrome.driver",path+"\\resources\\chromedriver.exe");
我已尝试在Windows及其工作。尝试在Mac上运行。
答案 2 :(得分:0)
基于文档https://www.selenium.dev/documentation/en/
WebDriver driver = new FirefoxDriver(); // for firefox
或
WebDriver driver = new ChormeDriver(); // for chrome
应有助于解决此问题。 请确保您已导入相关的类
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;