Как прочитать текст всех елементов ElementsCollection?

На странице есть несколько div с датой
я нахожу их с помощью

ElementsCollection result = $$(byClassName("created-date"));

Как мне проверить что в каждом найденном div есть строка, например “22/06/2021”?

for(SelenideElement element : result){
  element.shouldHave(text(“22/06/2021”));
}

можно с помощью Selenide-овских методов
хотя вариант сверху все таки читабельнее
result.shouldBe(CollectionCondition.allMatch(“all elements have text”, e → e.getText().contains(“22/06/2021”)));

1 лайк

В целом оба вариант ок, но не забудьте ещё проверить размер коллекции.
А то может получится, что коллекция пустая и никаких дат там нет (например, банально неверный селектор) - а тест будет зелёным.

1 лайк