一尘不染

如何使用Selenium测试模式对话框?

selenium

我开始使用Selenium
IDE,
并尝试测试一个充满模式对话框(window.showModalDialog)的Web应用程序。

记录测试似乎可以正常工作(除非弹出对话框时日志中没有任何内容),但是它们不能正确播放。该脚本实际上打开了窗口(通过单击按钮触发),但随后无限期地等待。

有什么建议?


阅读 251

收藏
2020-06-26

共1个答案

一尘不染

Selenium常见问题解答中,Selenium显然适用于某些类型的对话框,但不适用于其他类型的对话框:

我无法与弹出对话框进行交互。我的测试停止了!

您可以,但前提是该对话框是警报或确认对话框。javascript无法关闭其他特殊对话框,因此当前无法与之交互。其中包括“保存文件”,“记住此密码”(Firefox)和模式对话框(IE)。当它们出现时,Selenium只能在绝望中扭动双手。

要解决此问题,您可以使用一种解决方法(如果存在);否则,您可能必须从自动语料库中排除测试。对于Firefox中的“保存文件”对话框,可以在通过RC运行时指定自定义模板,该模板将始终导致文件下载到指定位置,而无需查询用户(请参阅
http://forums.openqa.org
/thread.jspa?messageID=31350)。选择记住它后,“记住此密码”对话框将不再出现。当前,关于IE模式对话框的工作还不多。

我似乎记得有人用可以关闭对话框的AutoHotKey脚本解决此问题。

2020-06-26