Webdriver - 弹出手柄

时间:2014-03-18 06:41:17

标签: javascript internet-explorer selenium selenium-webdriver webdriver

每当使用网络驱动程序点击链接时,IE都会打开一个新窗口而不是新选项卡。

快速提问 - 如何关闭新窗口中的弹出窗口?

示例 - 窗口1在IE 9中打开,然后单击链接。 点击链接即可打开新窗口(即窗口2) 我必须关闭Window 2上的弹出窗口。

有人可以帮助我..有没有办法关闭弹出窗口? 我试图使用一些代码来关闭弹出窗口,但它关闭了整个窗口(即窗口2)

感谢。

1 个答案:

答案 0 :(得分:1)

此代码适用于任意数量的弹出窗口

 // Get current window handle
 String parentWindow = driver.getWindowHandle();
 // Get all windows handles
 Set<String> windowHandles = driver.getWindowHandles();
 Iterator<String> iterator = windowHandles.iterator();
 while (iterator.hasNext()) {
    String handle = iterator.next();
    if (!handle.contains(parentWindow)) {
         // If not current window, close it
         driver.switchTo().window(handle);
         driver.close();   
    }
 }
 driver.switchTo().window(parentWindow);