我有一个md-select
下拉列表WebElement。我可以通过以下方式获得md-options
:
List<WebElement> dropDownElements = myDropDown.findElements(By.tagName("md-option"));`
这会给我一个md-options
的列表。该列表包含我预期的项目数。
但是,我想验证这些md-options
中的文字是否正确。每个WebElements的value属性都是[object Object]
,我想要实际的文本。
通过遍历网络元素的字段,我看到firstChild_
的{{1}}字段的firstChild_
包含我正在寻找的实际文本(包含很多内容)白色空间填充)。它位于data_
对象中。但是,API没有任何类型DomText
,我觉得这很笨拙?
如何轻松获取getChild()
的文字内容? xpath会让我得到我想要的东西吗?我该怎么做?
HTML:
md-options
答案 0 :(得分:0)
我创建了这个辅助方法来获取给定mdSelect
的字符串值public static List<String> getStringsInMdSelect(WebElement mdSelect) {
List<String> selectionStrings = new ArrayList<>();
WebElement contentElement = mdSelect.findElement(By.tagName("md-content"));
List<WebElement> contentDivs = contentElement.findElements(By.tagName("div"));
for (WebElement contentDiv : contentDivs) {
String rawText = contentDiv.getAttribute("textContent");
selectionStrings.add(rawText.trim());
}
return selectionStrings;
}