I am trying to get the count of elements using below script:
WebDriver driver = DriverFactory.getWebDriver()
def eleCount = driver.findElements(By.xpath(“//div[contains(@class,‘park w-100 p-2 ng-star-inserted’)]”)).size()
println eleCount
I have verified the xpath and returns count as 6, but when I am using it in script above it returns 0. Attached screenshot for reference.
@Brandon_Hein
Try CSS?
def eleCount = driver.findElements(
By.cssSelector("div.park.w-100.p-2.ng-star-inserted")).size()
WebDriver driver = DriverFactory.getWebDriver()
def eleCount = driver.findElements(By.cssSelector(“div.park.w-100.p-2.ng-star-inserted”)).size()
println eleCount
Console view:
- 18: eleCount = ng-star-inserted")).size()
- 19: println(eleCount) 0
Still the count is coming as 0
What does this produce in the browser console?
document.querySelectorAll("div.park.w-100.p-2.ng-star-inserted").length
By this, did you use the Inspection Tool of the browser or just visually inspection ? Could the elements be inside an iframe ?
1 Like
Below is what i used to verify.
It gives count as 6 in browser console as well.
document.querySelectorAll(“div.park.w-100.p-2.ng-star-inserted”).length
6
My guess, the page is not ready when your test code tries to verify the count.
1 Like
@ThanhTo
Thank you for your input, it gave me a clue to find the embedded element path.
@Russ_Thomas
Again thank you for your css. It’s so powerful, even i am starting to use it more often and moving away from xpath
1 Like