我需要测试下载操作。我已经为FF和Chrome浏览器配置了远程Web驱动程序,以自动下载文件,而没有任何提示和弹出窗口。但是我找不到任何有用的信息-如何允许IE9自动下载文件。
我尝试过的
和这个:
谁知道如何解决?这是真的吗?
最佳答案
不幸的是,我最近也遇到了这个问题。恐怕这不是好消息。
IE8和更低版本,这是不同的,仅仅是因为它是您可以与之交互的新窗口。
IE9,现在是内置的“框架通知栏”
您可以使用PInvoke单击“保存”按钮。请参阅此主题:
https://stackoverflow.com/a/8532222/1173729
这个答案是针对Watin的,但是唯一的不同是Watin已经封装了获取特定浏览器窗口的句柄的功能。这可以简单地用您自己的方法进行切换,重点通常只是获取IE窗口的句柄,沿着其子元素向下移动,直到您点击“保存”按钮。但是,这有一个主要缺点,那就是将控件切换回Selenium-不会发生,Selenium只会挂起。
注意,所有这些都在C#中。 Java显然还有其他方式,例如'Robot'类:
http://docs.oracle.com/javase/1.4.2/docs/api/java/awt/Robot.html
我没有使用过它们,但是您可以使用该类将其定向到“保存”按钮所在的位置。
没有注册表项或设置可以避免此问题-根本不可能。
我已决定,由于可以将FF&Chrome设置为自动下载文件,因此您可以在以后验证它的存在。您测试该文件可以下载,并显示在硬盘驱动器上。
如果IE9在Chrome和Firefox中可以正常运行,那么在IE9中不会发生什么机会? slim ,但可能。
最重要的是它是一个OS对话框,超出了Selenium的范围。
您也可以将其与AutoIT结合使用。我的经验是,AutoIT也可能会出现问题。
关于internet-explorer - Webdriver | IE9 |设置自动下载文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14752283/