在第一个浏览器启动之前应用该配置,包括共享测试设置中的任何隐式创建:

Configuration.proxyEnabled = true;
Configuration.fileDownload = FileDownloadMode.PROXY;
Configuration.downloadsFolder = "build/downloads";

open(applicationUrl);
File report = $("#download-report").download();

proxyEnabled 会为该浏览器会话启用 Selenide 的内置监听器。之后再修改静态设置,无法把该监听器/下载过滤器加入已有会话。downloadsFolder 只选择文件存储位置。

Configuration.proxyHost/proxyPort 指定的是这个内置端点,而不是任意的企业上游代理。端口设为零时,Selenide 会自行选择一个空闲端口。

在 Grid 上,远程浏览器必须能访问测试机的监听器。它自己的 localhost 指向别处;当自动探测不适用时,请使用浏览器可访问的对外公布主机。

对于普通的 href 链接,默认的 HTTPGET 走另一条下载路径。PROXY 适用于由操作触发的下载,例如没有直接链接的表单提交。

相关文章