繁体   English   中英

从 List 中断言该元素<webelement>包含一些文字

[英]Assert that element from List<webelement> contains some text

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

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

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

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

为了安全过滤掉空值和修剪:

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));     

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM