当测试页面同时出现2个或者以上窗口时候,而且新打开的window没有namem,可以使用driver.switchTo().window(winHandleID)来进行切换,如下代码已经在IE8中测试通过:
//Store the current window handle String winHandleBefore = driver.getWindowHandle(); //Switch to new window opened for(String winHandle : driver.getWindowHandles()){ System.out.println("+++" + winHandle); driver.switchTo().window(winHandle); } // Close the original window driver.switchTo().window(winHandleBefore); driver.close(); //Switch to new window opened for(String winHandle : driver.getWindowHandles()){ System.out.println("+++" + winHandle); driver.switchTo().window(winHandle); }
当最后只有一个窗口剩下的时候,应该可以直接使用
driver.switchTo().window(driver.getWindowHandle)
去选中新的窗口