使用findelements将值存储到数组中

vq8itlhq  于 2021-06-30  发布在  Java
关注(0)|答案(1)|浏览(231)

我有一个findelement语句,它选择了许多值:

String cmpName = Login.driver.findElement(By.cssSelector("span.Name")).getText();

如何将所有这些值存储到数组中?
所以,我需要这样的东西:

for (int a = 0; a<computerAmnt.size(); a++){

        iconCmpArr.get(i).add(cmpName);

        System.out.println("Test : " + iconCmpArr.get(i));
    }

但我不知道如何在for语句中使用findelement。

nsc4cvqm

nsc4cvqm1#

如果您查看selenium docs for findelement方法,它将返回声明为

WebElement findElement(By by)
Returns:
    The first matching element on the current page

这表明它只返回一个元素(第一个元素)。
因此,如果您的定位器返回许多元素,请使用findelements(注意“s”),它返回一个webelement列表

java.util.List<WebElement> findElements(By by)
Returns:
    A list of all WebElements, or an empty list if nothing matches

然后可以使用for循环遍历该列表。希望这有帮助。

相关问题