我必须使用selenium webdriver在下拉菜单中找到第一个和最后一个列出的选项。
li class="dropdown location"
ul class="select"
<li> class="dropdown location"
<ul> class="select"
<li> data-site="http://www.example.com" value="ES">Europe</li>
<li> data-site ="http://www.example.com" value="SG">Singapore</li>
有超过50个选项。我想找到索引号 新加坡。有没有办法在Webdriver中找到它?
答案 0 :(得分:1)
是的,有办法找到特定价值的指数。
获取列表的所有选项 将列表的每个元素的文本与可描述的文本进行比较,见下文
Select sel = new Select(driver.findElement(By.cssSelector("select[title='Sort By']")));
List<WebElement> list = sel.getOptions();
for(int i=0;i<list.size();i++){
if(list.get(i).getText().equals("Price")){
System.out.println("The index of the selected option is: "+i);
break;
}
}
答案 1 :(得分:0)
Select sel = new Select(driver.findElement(By.cssSelector("select[title='Sort By']")));
List<WebElement> list = sel.getOptions();
int index = 0;
foreach(WebElement option : list)
{
if(option.getText().equals("price"))
{
index = list.indexOf(option);
break;
}
}