如何停止在selenium中的web元素列表上运行的每个循环



我创建了一个在web元素列表上运行的方法,并返回列表中期望值的索引。该方法使用期望值来评估get属性值。它工作正常,但它一直运行到列表的末尾。是唯一的选项是中断循环是进入中断;索引之后=迭代器

public Integer indexInList(String expectedValue,List<WebElement> dropdownOptions,String attributeValue) throws Exception {
Integer index = -1;  // -1 meanning not found in list
int iterator = 0;    // run on the list
for (WebElement element : dropdownOptions )
{
if(element.getAttribute(attributeValue).equals(expectedValue))
{
index = iterator;

}
iterator ++;
}
return index;
}

是的,您需要在行索引=迭代器之后输入break

否。

除了";在index=迭代器之后输入CCD_ 1";,您可以使用return index;来替换相同位置的语句break;

for循环找到所需元素时返回迭代器:

public Integer indexInList(String expectedValue,List<WebElement> dropdownOptions,String attributeValue) throws Exception {
int iterator = 0;    // run on the list
for (WebElement element : dropdownOptions )
{
if(element.getAttribute(attributeValue).equals(expectedValue))
{
return iterator;
}
iterator ++;
}
return -1; // -1 meanning not found in list
}

以上是对代码的轻微修改。您不需要index变量,可以对iterator进行操作。

当找到所需元素时返回iterator,它将停止for循环。如果没有任何元素满足条件,则返回-1

相关内容

  • 没有找到相关文章

最新更新