Selenide не дожидается загрузки страницы

Тестовое приложение долго загружает первую страницу, и Selenide не дожидается загрузки URL, через метод open

собственно код очень простой
open(“someUrl”)

в 90 процентов случаев работает нормально, но иногда страничка грузится дольше

Как настроить в Selenide pageLoadTimeout ?

Попробуйте -Dselenide.pageLoadStrategy=eager

getWebDriver().manage().timeouts().pageLoadTimeout(30, SECONDS);

Если я пробую сделать
WebDriverRunner.getWebDriver().manage().timeouts().pageLoadTimeout(30, SECONDS);
перед тем как вызвать open(url) тест скипается c ignore, получается мне нужно явно открывать страницу без использования метода open а напрямую WebDriverRunner.getWebDriver().get(url)
Андрей возможно стоит добавить явную проперти в Configuration чтобы можно было задавать PageLoadTimeOut на уровне конфигурации ?

Наверное, можно по аналогии с Configuration.pageLoadStrategy сделать настройку Configuration.pageLoadTimeout.

1 лайк

Надеюсь получиься добавить в ближайший релиз, очень критично

Легко!

2 лайка

В следующий раз заводите issue на гитхабе. Там не потеряется.

@S_Romankov Если ещё не видели, Вышла Selenide 5.15.0

Добавили настройку Configuration.pageLoadTimeout
(по умолчанию 30 секунд)

Бывает так, что вебдрайвер надолго подвисает, пытаясь загрузить какую-то страницу, либо картинку на этой странице, или ещё какой-то элемент. Теряется время, сессия обрывается по таймауту и т.д.

В этом случае хорошо бы прервать тест пораньше, но таймаут для загрузки страницы в Selenium по умолчанию слишком большой: 5 минут.

Поэтому мы добавили в Selenide настройку Configuration.pageLoadTimeout , чтобы этот таймаут было легко менять.

Внимание! Значение по умолчанию - 30 секунд. Если ваши тесты начали падать по таймауту - знайте, какую настройку подкрутить.

См. issue 1268 и PR 1269.

Очень много классных изменений в новой версии) Отдельное спасибо за pageLoadTimeout

1 лайк