如何验证列表中的选定项?

时间:2015-01-15 22:21:37

标签: java selenium selenium-webdriver

我需要验证列表中的所选项目是“迄今为止”。当我尝试使用getAttribute时,我得到其他项的输出null,并且对于所选项目为true,但我没有在控制台中看到它们的名称。列表中有4个项目,我看到的只有null,null,null,true。但我的主要目标是验证列表中的所选项目。谢谢你的帮助!

HTML页面:

这是我的代码:

WebElement defaultItem = driver.findElement(By.xpath("//*[@id='myAddNewCampaignForm']/ol/li[16]/select"));
List<WebElement> allOptions = defaultItem.findElements(By.tagName("option"));
System.out.println("total items " + allOptions.size());

for (int i=0; i<allOptions.size(); i++) {
    System.out.println(allOptions.get(i).getText());
    System.out.println(allOptions.get(i).getAttribute("selected"));
}

1 个答案:

答案 0 :(得分:1)

导入此

import org.openqa.selenium.support.ui.Select 

使用Select class控制下拉对象。

WebElement defaultItem = driver.findElement(By.xpath("//*[@id='myAddNewCampaignForm']/ol/li[16]/select"));
Select select = new Select(defaultItem);
List<WebElement> selectedOptions = select.getAllSelectedOptions();


for(WebElement option : selectedOptions){
   System.out.println(option.getText());
}