ОШИБКА net.serenitybdd.core.Serenity — предупреждение отсутствует (ВНИМАНИЕ: сервер не предоставил никакой информации о трассировке стека)
Я получаю эту ошибку, когда пытаюсь обнаружить предупреждение с помощью этого кода:
Alert alertBox = getDriver().switchTo().alert();
Всплывающее окно с предупреждением появляется, но оно не совсем то же самое, когда я выполняю операцию через Selenium WebDriver и вручную. Это может быть источником проблемы, но я не знаю, почему всплывающее окно отличается.
Предупреждение при выполнении вручную
Предупреждение о завершении работы с Selenium
Это функция, которая вызывает предупреждение:
function confirm_remove() {
return window.confirm("Alert message");
}
Спасибо за вашу помощь
ОБНОВЛЕНИЕ:
Хорошо, я нашел способ обойти проблему, но не решил ее.
Я попытался вставить ожидания и сон, как вы мне предложили, но это не решило проблему, предупреждение все еще не было обнаружено.
В моем проекте я использую класс Test, который вызывает шаги из моего класса Steps, который вызывает webElements из моего класса Page. Дело в том, что между шагом, который нажимает кнопку «Удалить», и шагом, который управляет предупреждением, Selenium теряет обработку предупреждения. Поэтому я перегруппировал эти два шага, и Selenium, кажется, хорошо справляется с предупреждением.