2 回答
TA贡献1842条经验 获得超13个赞
因为RemoteWebDriver你必须设置文件检测器driver.setFileDetector(new LocalFileDetector());。你的代码:
public static void uploadSampleImage(StaticSeleniumDriver driver)
{
driver.setFileDetector(new LocalFileDetector());
File file = new File(System.getProperty("user.dir") + "/resources/images/" + SAMPLE_DOCUMENT_FILE_NAME);
Utils.Log("file exists: " + file.exists());
String imagePath = file.getAbsolutePath();
WebElement input = driver.findElement(By.name("file"));
input.sendKeys(imagePath);
}
TA贡献1827条经验 获得超8个赞
而不是在路径字符串中使用“/”,您可以使用File.separatorwhich 在引擎盖下自动处理操作系统级别的文件分隔符。使用它,您的代码变得独立于任何操作系统,它让 Java 负责根据操作系统使用什么分隔符,而不用担心它。
所以第一行代码变成了:
new File(System.getProperty("user.dir") + File.separator + "resources" + File.separator + "images" + File.separator + SAMPLE_DOCUMENT_FILE_NAME);其余部分保持不变。
!!没有额外的头痛。😃
添加回答
举报
