我的问题:

假设我有一个页面,上面有我购买的产品。在此页面中,我需要验证添加的这些产品之一是否包含上一步中输入的相同名称,并将其放入var(String firstProductName)。

因此,我注意到cssLocator .name是所有这些产品名称的定位器。如果我只购买了一种产品,则可以通过此定位器找到它,然后使用getText()验证是否包含与存储在var firstProductName中的名称相同的名称。

问题是:有时我只有一种产品,有时我有多种。

我需要:


访问此页面,使用.name定位符查找所有元素。
然后我需要一个接一个地检查,看是否通过getText()方法找到的文本包含我的字符串firstProductName
如果至少有一个名称等于此String,我的测试就可以了。如果不是,则测试失败。


我怎么做?

最佳答案

就像是:

List<WebElement> allProducts = select.findElements(By.cssSelector("{not quite clear what your selector is, but it includes "name"}"));
for (WebElement product: allProducts) {
    if(product.getText().equals(firstProductName))
        return; // or break or whatever
}

10-06 16:21