java - 在 selenium 中使用 list<webelement> 设置类似的 webblements

标签 java selenium-webdriver

我有几个页面元素/记录具有这样的 xpath/id

//*[@id='xyz-model-car-card-0']/car
//*[@id='xyz-model-car-card-1']/car
//*[@id='xyz-model-car-card-2']/car

我希望使用列表添加这些网络元素,以便我可以对它们采取任何操作。

List<WebElement> item = Arrays.asList();
// incase i want to navigate to 5 cards..
for(int i=0;i<5;i++) {
item.add(By.id('xyz-model-car-card-'+i));
}

但是,我无法添加它..给出以下错误..

*add (org.openqa.selenium.WebElement)
in List cannot be applied to (org.openqa.selenium.By)*

如果我们想一次性加载此类 WebElement 名称,处理此类 WebElement 名称的最佳方法是什么。在此处输入代码

PL。分享一些例子..提前致谢!

最佳答案

假设网络驱动程序名为“driver”:

List<WebElement> xyzModels = driver.findElements(By.xpath("//*[starts-with(@id='xyz-model-car-card-')]/car));

For (WebElement car : xyzModels) {
    //your code here...
}

关于java - 在 selenium 中使用 list<webelement> 设置类似的 webblements,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48670351/

相关文章:

java - 多重断言验证处理

Java-Selenium2 : Need method explanation

java - 有没有更系统的方法来填充我的布局?

Java Selenium Webdriver 设置卷?

c# - C# 和 Java 之间表达式中 float 或 double 的隐式转换/提升

java - ObjectMapper - 读/写通用对象

java - 如何使用 Selenium Webdriver 识别特定文本的语言

java - 获取NoSuchElementException : no such element: Unable to locate element

java - 将所有非字母数字更改为 +

java - Typealias - 在 Kotlin 中组合多个接口(interface)