【发布时间】:2015-11-12 10:18:22
【问题描述】:
我正在使用 Java 中的 selenium webdriver 开发一个框架。我有两个 Maven 项目。一个用于框架,另一个用于测试项目。
为了启动 ChromeDriver,我需要使用 chromedriver.exe 文件的路径设置系统属性。我在框架项目的 /src/main/java 中的 DriverFactory.java 中执行此操作。现在,如果我将 exe 文件放在 src/main/resources/drivers 中,Java 会抱怨找不到该文件。代码是:
private static String chromeDriverLocation = "drivers/chromedriver.exe";
File cDriver = new File(DriverFactory.class.getResource(chromeDriverLocation).getFile());
// Is it executable
if (!cDriver.canExecute()) {
cDriver.setExecutable(true);
}
System.setProperty("webdriver.chrome.driver", DriverFactory.class.getResource(chromeDriverLocation).getFile());
我尝试将此文件放在测试项目中的 src/main/resources/drivers 并修改代码如下:
private static String chromeDriverLocation = System.getProperty("user.dir")+ "\\classes\\drivers\\chromedriver.exe";
System.setProperty("webdriver.chrome.driver", chromeDriverLocation);
虽然上面的代码在通过 Jenkins(Maven) 执行时可以在本地工作,但我不确定这是否是最好的方法。有人可以提出其他实现这一目标的好方法吗?
【问题讨论】:
标签: java maven selenium webdriver