Gradle + Selenide + Cucumber всё в Intelj Idea
при логине в приложение - может всплывать от 0 до 3 (обычно 1) поп-ап окон.
ВАЖНО: фокус НЕ переводится в эти всплывающие окна, т.е. если запросить getWindowHandler() - он вернёт значение базовой страницы
я реализовал максимально простой вариант:
switchTo().window(1);
closeWindow();
switchTo().window(0);
но в этом варианте есть 2 проблемы:
- если вдруг не случилось ни одного поп-апа - то сценарий вылетает по эксепшену
- изза п.1. не возможно добавить код вроде
switchTo().window(3);
switchTo().window(2);
…
можно было бы написать поиск по title-ам этих поп-апов… но хотелось бы какого-то универсального решения, вроде:
int winNum = $(get number of opened windows/pop-ups)
for (int i = winNum; i >=1; i-- ){
switchTo.window(i);
closeWindow();
switchTo.window(i-1);
}
не подскажите как лучше реализовать закрытие ВСЕХ всплывших окон?