Проблема
Я хотел переключить некоторые элементы (например, прокрутку вниз на X пикселей) на определенной вкладке, которая НЕ находится на последней вкладке при открытии веб-страницы с несколькими вкладками.
Изначально идея заключалась в сравнении исходный код страницы каждого драйвера, чтобы определить, какой из них есть, и соответствующим образом переключать элементы. Теперь мне нужно изменить порядок, и веб-страница, которую я хочу переключить, не последняя.
Исходный код похож на приведенный ниже:
Код: Выделить всё
public boolean afterFullscreen(String pageSource, WebDriver driver) {
if ("".equals(pageSource) || pageSource == null) {
logger.error("empty pageSource: " + pageSource);
return false;
}
// get pagesource that contains specified string and execute corresponding action
for (Map.Entry entry : manipulateActionsMap.entrySet()) {
if (pageSource.contains(entry.getKey())) {
// this triggers the corresponding action
entry.getValue().accept(driver);
return true;
}
}
logger.info("can't find matching pageSource");
return true;
}
Я мог бы использовать метод driver.switchTo().window() для циклического просмотра всех вкладок и проверки источников каждой страницы после каждой переключаться и зацикливаться на всех драйверах, но это кажется нелогичным и сложным для одной задачи.
Есть ли какой-нибудь другой способ или методы, с помощью которых я мог бы идентифицировать нужную страницу?
Подробнее здесь: https://stackoverflow.com/questions/782 ... ching-tabs
Мобильная версия