У кого-нибудь есть проблемы с доступом к файлу, загруженному через удаленный веб-драйвер Chrome? Мы запускаем Jenkins из концентратора, в котором есть 3 подчиненных устройства, на которых может выполняться тест. Часть теста состоит в том, чтобы щелкнуть ссылку, которая загружает файл.
Используя пример, который я нашел в переполнении стека, где-то мне удалось получить имя самого последнего загруженного файла. После локального тестирования я сделал
File f = new File(fileName); // fileName is the name of the downloaded file
if (f.canRead()) {
System.out.println("Yes");
} else {
System.out.println("No");
}
. При локальном запуске из Eclipse выводится «да». Однако не при беге от Дженкинса с хозяином / рабом. chrome: // downloads показывает имя файла, который был загружен (это правильное имя), и я правильно прочитал имя, но когда я пытаюсь получить к нему доступ, оно не найдено.
У нас есть класс с именем LocalFileDetector, поэтомуЯ могу сделать что-то вроде
RemoteWebDriver wd = (RemoteWebDriver) driver;
wd.setFileDetector(new LocalFileDetector());
Это, я думаю, загружает локально, но chrome: // downloads не показывает загрузок. (Chrome запускается заново каждый раз, поэтому в списке нет загрузок из предыдущих выпусков.)
Я знаю имя концентратора, поэтому могу его использовать, но точно не знаю, каким образом. Имя файла примерно такое: c: \ users \ victor.ntdomain \ downloads \ printableFile.pdf (это, конечно, в Windows).
Кто-нибудь имел опыт доступа к таким файлам? Я не думаю, что ftp будет работать, потому что ftp из относительного каталога на машине.