Добрый день всем.
Нужна помощь квалифицированных и опытных автоматизаторов.
Тестирую сайт https://www.delta.com/ . При загрузке страницы всплывает окно с выбором языка (причем всплывает не всегда, наверное из-за того что я часто захожу на сайт иногда не появляется оно).
Так вот, не могу понять как с ним работать - как закрыть его или выбрать язык?
Ну и как прикрутить проверку на то что popup появился?
Вебдрайвер за этим окном работает со страницей ( выбираю аэропорт, даты и т.п.)
Хелп плиз )
Проверяете, что появилось форма выбора языка.
Если нет формы - идете дальше.
Если есть форма - выбираете нужный язык.
В чем конкретно проблема?
не могу переключится на это окно и закрыть его или выбрать язык
Как выглядит форма? Можно скрин?
в вопросе есть url сайта, можно посмотреть самому
Спросил, потому что у меня ни разу не появилось это окно.
Не понятно, а как вы пытаетесь поймать это окно?
Это обычная div`ка.
Смотрите, например, наличие элемента - это заголовок с текстом “PLEASE SELECT YOUR COUNTRY & LANGUAGE”
{css: "#sel_lang"}
Если этот элемент видим, то кликаете на крестик в углу.
Если нужно выбрать язык, кликаете на язык:
{css: "span > #en-us"} // пример для английского языка
Если не очень хочется все это делать, можно убить div`ку простым execute_script - что-то вроде:
$('.ui-dialog').remove()
Спасибо. Дошло до меня )
Вот такой код получился у меня
if (this.isElementPresent(By.xpath("//h1[@id='sel_lang']"))) {
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//button[span[text()='Close']]"))).click();
System.out.println("Successfully closed the start Popup");
}
Ну типа того
Локаторы у вас можно оптимизировать, взгляните и на это
А если выбрать язык там никакая кука не проставляется? Можно обходить этот попап:
- Зайти на страницу (чтоб стандартный набор кук установился)
- Принудительно через drive.manage.cookies проставить куку, которая за язык отвечает
- refresh страницы
- ???
- profit
Круто )) - свой ответ пометил правильным )))
не хочу никого обидеть, просто пометил правильный код. А за ваши совет СПАСИБО большое) - поставил лайк )