首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在IE c#中远程下载Selenium文件

在IE c#中远程下载Selenium文件
EN

Stack Overflow用户
提问于 2019-03-08 00:30:41
回答 2查看 1K关注 0票数 0

我想在IE下远程运行下载测试。我正在寻找任何方法来做这件事(在远程机器上),即使我必须使用另一个工具,如autoit (对于远程方面,这似乎并不准确)。

我的问题是:当IEWebdriver点击“下载”按钮时,它会打开一个对话框,要求我输入Save asOpenCancel,但我无法点击它们。在angularJS上生成的UI逻辑。在点击按钮后,事件生成发生了ng-click,并调用了从服务器接收文件的方法,这就是为什么我不能自己建立对服务器的请求,接收文档并将其保存在必要的目录中。

EN

回答 2

Stack Overflow用户

发布于 2019-03-12 22:20:19

通常有两种方法可以让浏览器自动下载文件,而不需要确认提示。

我目前没有测试Internext Explorer驱动程序,但我相当有信心,您必须在浏览器的设置选项卡中手动配置浏览器,告诉它不要提示下载特定类型的内容。

Selenium不能以类似于主UI线程上的浏览器警报的方式自行消除这种类型的警报。

有些浏览器驱动程序允许在浏览器设置中和从传递到驱动程序构造函数的FirefoxProfile对象中设置此行为。以下是如何在firefox中完成此操作的示例:

代码语言:javascript
运行
复制
                FirefoxProfile profile = new FirefoxProfile();
                profile.SetPreference("browser.download.dir", "%path%");
                profile.SetPreference("browser.download.folderList", 2);
                profile.SetPreference("browser.helperApps.neverAsk.saveToDisk", "text/csv,application/pdf,application/octet-stream,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");

这并不能直接解决你的问题,因为我现在没有能力尝试来确认任何事情,但这应该会帮助你找到正确的方向。

票数 0
EN

Stack Overflow用户

发布于 2019-04-09 16:32:50

IE弹出窗口是由IE原生代码控制的,我们不能用Selenium调用这些方法。如果你想在IE中下载文件,你可以考虑使用其他工具,如Reboot,AutoIT来处理IE控制的元素。

请参考以下文档:

http://ardesco.lazerycode.com/testing/webdriver/2012/07/25/how-to-download-files-with-selenium-and-why-you-shouldnt.html

Download a file in IE using Selenium

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55048624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档