obter o número total de div usando selênio com java

king:

Abaixo está a página HTML

<div class="box">
            <div class="box3 disbox"></div>

            <div class="box3 top"><input type="hidden" value="38206" name="jdh0"> 
                <div class="box3-1 bg1">1</div>
                <div class="clear"></div>
            </div>

            <div class="box3 top"><input type="hidden" value="38215" name="jdh1"> 
                <div class="box3-1 bg1">2</div>
                <div class="clear"></div>
            </div>

            <div class="box3 top"><input type="hidden" value="38214" name="jdh2"> 
                <div class="box3-1 bg1">3</div>
                <div class="clear"></div>
            </div>

            <div class="box3 top"><input type="hidden" value="38216" name="jdh3"> 
                <div class="box3-1 bg1">4</div>
                <div class="clear"></div>
            </div>
        </div>

Quero que o número total de div contagem que é igual ao <div class="box3 top">do<div class="box">

Eu tentei com o código abaixo, mas a sua contagem de todo o div independentemente da classe, deixe-me saber como eu posso contar o div com base no nome de classe?

WebElement resultGrid = driver.findElement(By.xpath("/html/body/div[4]/div/div/div[1]/div[4]"))
            List<WebElement>totalRow = resultGrid.findElements(By.tagName("div"))
DebanjanB:

Para contar e imprimir o número total de <div class="box3 top">dentro de <div class="box">você pode usar uma das seguintes estratégias Locator :

  • cssSelector :

    System.out.println(new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.cssSelector("div.box div.box3.top"))).size());
    
  • XPath :

    System.out.println(new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.xpath("//div[@class='box']//div[@class='box3 top']"))).size());
    

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=332781&siteId=1
Recomendado
Clasificación