Проблема (Вопрос) заключается в скачивании файлов если в их названии есть пробелы (Release notes.zip). Это касается только тестового окружения (Lniux, Selenoid, Docker).
На локальной машине (Windows) файлы просто сохраняются в target/download и там потом мы их ищем.
Все файлы скачиваются через запрос к бекенду.
То есть сейчас все тесты просто кликают по кнопке и ждут, а затем метод бежит по директории и ищет последний скачанный файл, содержащий текст в имени.
Я попытался получить файлы при помощи запроса к селеноиду в формате http://12.12.12.12/download/sessionId/ но список файлов пуст, хотя файл скачан (видно по selenoid UI)
У меня получилось скачивать файлы, которые не содержат пробелы, при помощи запроса к селеноиду в формате http://12.12.12.12/download/sessionId/
У меня не получилось настроить прокси, пока не разобрался.
Как я понял метод download() в selenide работает только с аттрибутом href (без этого аттрибута ошибка). Этот способ наверное не очень подходит, кликать приходится на разные эелементы.
Конфиг
Configuration.remote = "http://" + cf.getRemoteURL() + "/wd/hub";
Map<String, Boolean> options = new HashMap<>();
options.put("enableVNC", cf.getEnableVNC());
options.put("enableVideo", cf.getEnableVideo());
options.put("enableLog", cf.getEnableLog());
Configuration.browserCapabilities.setCapability("selenoid:options", options);
Configuration.browserCapabilities.setCapability("sessionTimeout", "30m");
Configuration.fileDownload = FileDownloadMode.FOLDER;
Стек из POM:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.source>8</java.source>
<java.target>8</java.target>
<owner.version>1.0.12</owner.version>
<cucumber.version>7.2.3</cucumber.version>
<aspectj.version>1.9.6</aspectj.version>
<aspectj-maven-plugin.version>1.14.0</aspectj-maven-plugin.version>
<surefire.version>2.22.2</surefire.version>
<selenide.version>6.2.0</selenide.version>
<log4j.version>2.15.0</log4j.version>
<slf4j.version>1.7.30</slf4j.version>
<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
<allure.version>2.17.2</allure.version>
<allure.maven.version>2.10.0</allure.maven.version>
<common-lang3.version>3.12.0</common-lang3.version>
<restassured.version>4.4.0</restassured.version>
<jackson.version>2.12.3</jackson.version>
<tags></tags>
</properties>