Падает тест, ошибка: org.openqa.selenium.TimeoutException: ожидаемое условие не выполнено: ожидание видимости всех элементов, расположенных с помощью By.xpath: //h5[text()=‘Elements’] (попытка длилась 30 секунд с интервалом 500 миллисекунд)
Использую Java, Selenium, openJDK, Maven. Сайт, который тестирую (использую для обучения автоматизации тестирования) - https://demoqa.com/
Я хочу, что бы этот сайт открылся в браузере и кликнуть по разделу Elements. Так и происходит - сайт открывается и кликается раздел Elements. После этого тест падает.
Код (вынесен в отдельный класс):
public void chooseElements(String Elenents) {
click(By.xpath("//h5[text()='Elements']"));
}
В самом тесте код такой:
@org.junit.jupiter.api.Test
public void FirstTest() {
main.goTo(); /* обращаемся к странице MainPage */
main.chooseElements("Elements");
elements.checkPageIsCorrect();
}
С логами не смогла пока совладать, но тест падает на elements.checkPageIsCorrect();
Если удалить строку, то тест проходит. Но происходит только открытие сайта, а по элементу уже нет клика.
…
/* 8. Is Element Displayed - найден элемент или нет. True - это Ok, False - тест провален */
public void isElementDisplayed(By elementBy) {
waitVisibility(elementBy);
assertTrue(driver.findElement(elementBy).isDisplayed());
…
По обучалке , я понимаю, этот код относится к " checkPageIsCorrect".
По логике assert делает проверку найден элемент или нет.
Я смотрю уроки на ютуб, а там все так гладко показывают) а по факту есть вопросики. Так как я только начинаю вникать _очень долго приходится искать решение и разбираться что и отчего. Когда решение найдено, то кажется все легко . А ваш способ ещё не применила-как разберусь, так отпишусь тут в комментарии.
В общем-то суть автотестов понятна, нужно просто написать их .
С моими продуктами, которые я тестирую, кажется, лучшее решение Selenium.
Если так, то соглашусь @Oleksii_Hlovatskyi что переходите сразу на Selenide, это отличный фреймворк, который упрощает написание тестов) на этом форму кстати есть его основатель) Поэтому с вопросами думаю оперативно поможет)