使用IE webdriver,Selenium处理JS警报

时间:2011-05-05 18:03:18

标签: selenium selenium-rc webdriver javascript

我需要单击基于Java的应用程序的取消按钮。 我正在使用IE驱动程序,Eclipse IDE和我的应用程序只支持IE。[我用Java编写脚本]

情况如下,

  1. 登录该应用程序
  2. 有一个帐户会话弹出窗口[确认框] [js] [警报具有焦点,用户无法关注应用程序]
  3. 点击取消按钮
  4. 现在,我已成功登录,但我无法处理JS Alert窗口。所以我无法编写更多脚本。

    请帮帮我!!!

2 个答案:

答案 0 :(得分:1)

如果你正在使用Java,并且你正在使用Selenium WebDriver API,那么类似下面的代码应该有效:

driver.switchTo().alert().dismiss();

尚未针对每个驱动程序实施警报处理,但它应适用于IE。

请记住,您始终可以在this link找到WebDriver API的Javadoc。

答案 1 :(得分:-1)

要在IE中处理警报,您需要先设置IE的功能:

DesiredCapabilities capabilities = new DesiredCapabilities();          
capabilities.setJavascriptEnabled(true);                                           capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);                                   
capabilities.setCapability("ignoreProtectedModeSettings", true); //added this to ignore protecion mode setting so as to launch IE

driver = new InternetExplorerDriver(capabilities);
driver.get("url");
driver.switchTo().alert().dismiss();   //or  
driver.switchTo().alert().Accept();    // accordingly