如何使用Selenium WebDriver检查<ul>列表中的所有元素?

Bur*_*ras 7 java selenium webdriver list

是否有可能遍历所有li元素<ul> </ul>.假设我有一个未知数量的li元素,所以循环使用它们的一种方法是强加for一个最大可能数量为lis 的循环,比如100,然后施加try and catch.

try{
for (int i=0; i<100; i++) {
 driver.findElement(By.xpath("//div[@id='...']/ul/li[i]"));
}
}
catch {...}
Run Code Online (Sandbox Code Playgroud)

但是,它不承认i索引?我怎样才能识别它?

有没有更好的方法?

vid*_*dit 28

Webdriver有findElementsAPI,可用于此目的..

List<WebElement> allElements = driver.findElements(By.xpath("//div[@id='...']/ul/li")); 

for (WebElement element: allElements) {
      System.out.println(element.getText());
}
Run Code Online (Sandbox Code Playgroud)