Почему я получаю одинаковые обработчики родительского и дочернего окон при печати?

String parentWindowHandler = browser.getWindowHandle(); // Store your parent window
System.out.println(parentWindowHandler);

browser.findElement(By.cssSelector("button.btn-danger")).click();
String subWindowHandler = null;

Set<String> handles = browser.getWindowHandles(); // get all window handles
Iterator<String> iterator = handles.iterator();
while (iterator.hasNext()){
    subWindowHandler = iterator.next();
}
browser.switchTo().window(subWindowHandler);
System.out.println(subWindowHandler);// switch to popup window

1 ответ

Итератор в верхней части вашей коллекции. Когда ты iterator.next() это будет только ваше родительское окно. Если вы хотите получить дескриптор окна ребенка, сделайте на больше iterator.next()

while (iterator.hasNext()){
parentWindowHandler = iterator.next();
subWindowHandler = iterator.next();

}

Другие вопросы по тегам