java - 下载文件存储位置和处理使用带有 JAVA 的 selenium webdriver 下载弹出窗口

标签 java selenium download

请提出以下几点实现的想法

1.如何使用带有 JAVA 的 Selenium Webdriver 处理 IE 中的下载弹出窗口? want to save that Xml file

2.如何使用JAVA将该xml文件存储在不同的位置?

注意:我们将传递 'n' 个输入,每个输入都有一个 xml 文件,需要将所有 xml 文件下载并保存在不同的位置

最佳答案

我建议您不要使用 selenium 自动下载文件。这是一个你不想落入的陷阱。文件下载在不同浏览器中的工作方式不同。人们会推荐使用 AutoIT,但它只适用于 Windows,因此无法进行跨平台测试。由于您使用 Java 绑定(bind),您可以使用 Robot 类,将鼠标指针移动到窗口上的特定位置并发送 native 点击。根据我的经验,这个解决方案真的很不稳定。您不知道必须单击的确切位置,而使用 Robot 时,您是在盲目地单击某些东西。除此之外,当您使用 selenium 网格在远程计算机上运行测试时,事情会变得更加困难。

那么如何下载文件呢?只需获取底层链接即可下载 DOM 中可用的文件并触发 GET 请求。如果要验证文件,请下载内容。如果您不想验证内容,只需响应代码即可。 Here是一个很棒的博客,其中包含有关如何使用 http 请求在后台下载文件的 Java 示例,并详细解释了为什么使用 selenium 下载文件不是一个好主意。

关于java - 下载文件存储位置和处理使用带有 JAVA 的 selenium webdriver 下载弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21255338/

相关文章:

Java:有没有更简单的方法来解析字符串中的数组元素?

java - 关于数组列表

java - 我似乎无法修复编译器错误

java - eclipse 错误 : 'Selection does not contain a main type/an applet'

python - 如何创建 python selenium 应用程序及其驱动程序?

java - 由 java 中的子类类型 id 安全转换

java - jetty worker 。驱动程序可执行文件不存在:/chromedriver. exe

android - 下载文件时更新 ListView 中的进度条

jquery - 使用 jQuery 下载文件

java - 如何测试服务器端是否出现错误,并输出客户端