Selenide PROXY Downloads Require Proxy Setup Before Browser Startup
PROXY file download mode depends on the listener and filter installed at browser creation, not the downloads folder alone.
Apply the configuration before the first browser starts, including any implicit creation in shared test setup:
Configuration.proxyEnabled = true;
Configuration.fileDownload = FileDownloadMode.PROXY;
Configuration.downloadsFolder = "build/downloads";
open(applicationUrl);
File report = $("#download-report").download();proxyEnabled enables Selenide's embedded listener for that browser session. Changing the static settings afterward cannot add that listener/download filter to the existing session. downloadsFolder only selects file storage.
Configuration.proxyHost/proxyPort identify that embedded endpoint, not an arbitrary corporate upstream. Port zero lets Selenide pick a free port.
On Grid, the remote browser must reach the test machine's listener. Its own localhost points elsewhere; use a browser-reachable advertised host when detection is unsuitable.
For a normal href link, default HTTPGET uses a different download path. PROXY is useful for action-triggered downloads, such as a form submission without a direct link.