如何更新页面上的Webelements列表?

问题描述 投票:0回答:1

标题中-如何正确刷新“ productList”以最终在目录中找到特定产品?

即使该产品本身在页面上可见,此方法也始终在“显示下一个产品”按钮中单击。这意味着“ productList”尚未刷新。

   public void findProductAndAddToCart()  {

        //searching for products by className
        List<WebElement> productList = SeleniumDriver.getDriver().findElements(By.className("bcom--txtBold"));

    for (int i = 0; i < productList.size(); i++) {
        //getting the numbers of the products
        String element = productList.get(i).getText();

        if (element.equals("7000029644")) {
            productList.get(i).isDisplayed();
            System.out.println("Product is displayed");
            SeleniumDriver.getDriver().findElement(By.xpath("XPATH - Add to Cart Button')]")).click();
            break;

        } else {

            //the product hasn't been found, so need to click "Show Next Products"
            SeleniumDriver.getDriver().findElement(By.xpath("//a[contains(.,'Show Next')]")).click();
            List<WebElement> newProductList = SeleniumDriver.getDriver().findElements(By.className("bcom--txtBold"));
            productList.addAll(newProductList);


        }

ProductShow Next Products ButtonAdd to Cart Button

java selenium selenium-webdriver automated-tests functional-testing
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.