断言 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));
}
我不确定如何断言我有一个网络元素列表,其中每个网络元素都有文本 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));
}