Дерево проектов
Project
JavaRessources
src/test/java
myclass.java
DeployedRessources
webApp
myFile.txt
в моем классе.java Я хочу загрузить myFile.txt с selenium webdriver:
driver.findElement(By.id("upload1")).sendKeys("myFile.txt");
когда я делаю:
private void verifyFile(final String myId, final String src) {
final WebElement file = this.driver.findElement(By.id(myId));
final String value = file.getAttribute("value");
assertEquals("name of uploaded file: ", src, value);
}
verifyFile("upload1", "myFile.txt");
он возвращает: name of uploaded file: expected: [myFile.txt] but was []
поэтому я не знаю, как использовать относительный путь для загрузки этого файла с помощью seleniumWebDriver
благодаря
Я решил свою проблему. он работает очень хорошо. Ниже мое решение, если оно помогает кому-то: код ниже:
// Find path url of files to upload
final String pathDir = new java.io.File("").getAbsolutePath();
final String pathFile = pathDir + "\\src\\main\\webapp\\myFile.txt";
// End find path url of files to upload
driver.findElement(By.id("upload1")).sendKeys(pathFile);
Насколько я понимаю ваш вопрос, sendkeys вы отправляете только имя файла. Поэтому попробуйте отправить абсолютный путь файла.
driver.findElement(By.id("upload1")).sendKeys("d:\\folder\\myFile.txt");
Отредактировано в соответствии с вашим комментарием:
Вы должны использовать относительный путь файла для ссылки на него,
driver.findElement(By.id("upload1")).sendKeys("./webApp/myFile.txt");
driver.findElement(By.id("upload1")).sendKeys(filePath);
работает!. Но я использовалString filePath = System.getProperty("user.dir") + "/src/resources/test.pdf";
получить абсолютный путь к файлу