断言 List<webelement> 中的元素包含一些文本

Assert that element from List<webelement> contains some text

我不确定如何断言我有一个网络元素列表,其中每个网络元素都有文本 inside,我想验证这个网络元素列表中是否存在一些文本。

我不确定在这种情况下应该如何断言。

简单获取流,映射到字符串(文本)并检查是否匹配:

boolean anyMatch = webelements.stream()
  .map(WebElement::getText)
  .anyMatch(text -> "inside".equals(text));

为了安全起见,过滤掉 null 和 trim:

boolean anyMatch = webelements.stream()
  .map(WebElement::getText)
  .filter(Objects::nonNull)
  .map(String::trim)
  .anyMatch(text -> "inside".equals(text));

你可以这样做:

public boolean isElementsContainsProvidedText(String text){

    List<WebElement> elements = driver.findElements(By.xpath("your_xpath_for_list"));

    return elements.stream().anyMatch(e->e.gettext().trim().equals(text));     

}