在Selenium中有窗口迭代的替代方法吗?

时间:2017-07-04 06:26:17

标签: java selenium

我目前正在为一个应用程序进行自动化测试,该应用程序打开并使用很多窗口。我正试图找出一种在这些窗口之间切换并关注最近打开的窗口的方法,但是迭代通过窗口句柄并且比较标题或URL对于我们来说只是太慢,因为这个应用程序打开这么多窗户!

你有没有找到办法做到这一点,没有经常的方法获取windowHandles并迭代它? 非常感谢!

1 个答案:

答案 0 :(得分:0)

getWindowHandles()会返回LinkedHashSet,以维持广告订单。最后打开的窗口将是Set中的最后一项。 Set界面本身没有获取最后一项的选项,但您可以执行类似

的操作
Set<String> windowHandles = driver.getWindowHandles();
String lastWindow = windowHandles.toArray()[windowHandles.size() - 1];
driver.switchTo().window(lastWindow);