Driver.getWindowHandles()在Windows 10上的IE11中总是返回1,尽管有两个窗口打开

时间:2016-10-20 07:19:41

标签: java selenium-webdriver windows-10 internet-explorer-11 selenium-iedriver

上下文代码:

    Set<String> handles = driver.getWindowHandles();

        String firstWinHandle = driver.getWindowHandle(); 
        handles.remove(firstWinHandle);

        String winHandle=handles.iterator().next();

        if (winHandle!=firstWinHandle){

            //To retrieve the handle of second window, extracting the handle which does not match to first window handle

            String secondWinHandle=winHandle; //Storing handle of second window handle

            //Switch control to new window

            driver.switchTo().window(secondWinHandle);
        }

此代码在Windows 7和Windows 8.1上的IE11上完美运行以切换到第二个窗口,但在Windows 10上不起作用。

对于Windows 10,行显示为Java.util.NoSuchElement Exception

String winHandle=handles.iterator().next();

使用的Selenium和IE版本是2.53.1。

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。 在所有区域的IE设置中禁用保护模式有帮助。