我正在尝试使用 selenide 从下拉列表中获取所有值。 使用
selectOptionByValue("0")
我可以获取一个值。
但我需要下拉列表中的所有值。
让我知道如何使用硒化物代码来做到这一点
也许,你可以尝试使用这样的东西:
$$(By.xpath("//path/to/element")).iterator().forEachRemaining(element -> {
/**
* your code here, describe here what to do with each element found by the xpath
* e.x.
* element.click();
*/
});
我用它来点击页面上具有特定
class
属性的所有链接。
尝试这个解决方案:
Select select = new Select($(By.id("<SELECT_ID>")));
List<WebElement> elements = select.getOptions();
您可以使用 ElementsCollection:
ElementsCollection listOfElements = $$(By.cssSelector(".its_a_spicy_meatball"));
注意两个
$
符号 - 这表示对象是 ElementCollection
示例:
for(SelenideElement element : listOfElements){
element.click();
}