Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Как заставить webdriver ждать пока вся страница не будет видима в браузере на екране ?


(Taras) #1

Дергаю скриншоти вебдрайвером - скриншот забираеться сразу перед тем как тест закривает браузер, но если например тест заканчиваеться переходом на новую страницу и просто делает там какую то проверку сразу то скриншот сохраняеться предидущей страници, так как на екране не видно последней странице, но в ДОМе она прогружаеться и тест проходит успешно.

Как поставить вейтер что б страница именно видима на екране била ?

Как подождать что б прогрузился ДОМ разобрался

return js.executeScript("return document.readyState").equals("complete");

но ето не помагает, нужно такой кондишин которий проверяет есть ли она видима на екране


(Mykhailo Poliarush) #2

А если подождать какой-то элемент на странице на видимость или что-то сделать с элементом, то тогда скриншот снимается верно?

На javascript - это наверное единственное что ты можешь считывать на счет загрузки, другого нет, насколько я знаю.


(Бабай) #3

Лучший вариант это добавлять в PageObject’ы
FindBy (id = “Тут id html страницы”)
private WebElement currentPage;

private String page = “тут value html страницы”;

Дальше можно сделать метод который будет дожидаться появления атрибута value у currentPage и проверять соответсвие