Selenium based Custom Keyword to Count Table Rows in Katalon Studio

When working with tables, one of the most common tasks is to count the number of rows in that table. Even though Katalon has the ability to create a parameterized version of the table object, you still need to know the number of rows or columns available. The most common way is through the Webdriver, get a List of the returned objects and then get the size.

After doing that a couple of times, I’ve switched over to calling that code from a Custom Keyword and simply call it from the Test Case. To make it dynamic, the xpath of the table is passed. This builds on the idea of passing the Katalon Object as a String. In this case, the xpath is passed as a String so it can be used anywhere.

The basic Keyword is quite simple and looks like this:

public class selenium {
KeywordLogger log = new KeywordLogger()
@Keyword
def countRowsPerPage(String xpath){

WebDriver driver = DriverFactory.getWebDriver()

//Find the table element on the page
WebElement Webtable=driver.findElement(By.xpath(xpath));

//Determine the number of elements in the table
List TotalRowCount=Webtable.findElements(By.xpath(xpath));

//Get the size of the List, this is the number of rows
int totalNumberOfRows=TotalRowCount.size()
log.logWarning('Total Number of rows on the page:= ' + totalNumberOfRows)
return totalNumberOfRows

   }
}

Within the Test Case, a variable would be set to the xpath of the table, such as:

xpath="//*/div[@id='search-results']/div/table/tbody/tr"

The Custom Keyword is then called with a variable set to the number of rows returned from the Custom Keyword Method.

rowResults=CustomKeywords.'commonCode.selenium.countRowsPerPage'(xpath)

The variable can now be used within a FOR loop or to verify the number of results.

Other articles of interest:

Leave a Reply

Your email address will not be published. Required fields are marked *

Recent Comments
  • How To Disable the Quicken Registration Prompt (16)
    • Dave: Works for Quicken 2007 too. Thanks, Gina!
    • Charlie Fellenbaum: Yay, thanks, and that worked for Quicken 2006 as well.
    • Ken: This didn’t work for me. I have 2006. I installed on a new laptop. I must have registered before, don’t remember. I tried to register this time, but got an error message. I’d rather not registered, though. I use...
    • Neil Murphy: I discovered that early on. I’m using 2001.
    • Jeremy: Thank you so so so much. I am still using Quicken 2010 because Intuit didn’t want to properly support users abroad anymore (never mind that they only link to US banks for transaction downloads; they didn’t want my...
  • Quasi Performance/Load Testing with Katalon Studio (1)
    • Anthony: I have done this with 100 plus machines at the same time and it worked well and provided some useful feedback.
  • A Try Catch example in Katalon Studio (3)
    • Venkatesh: Hi Don Pedro Can you share me sample project ….which consist of basic to advanced stuff…If your github or gitlab url aso present please share… As I am beginer to this I need to learn lot
    • Don Pedro: Hi Lucas. Thank you for the kind comments. I would be happy to help. Let me know how I could be of assistance.
    • Lucas: Thanks for sharing a lot of Katalon tips and tricks. The Katalon team highly appreciate your support and feedback. To make Katalon Studio better and be the best free automation solution for testing community, we wish to coordinate...
  • Securely storing passwords and login details with Set Encrypted Text in Katalon Studio (1)
    • Agus: Hi Don, Is there a way to set the encrypted text to be used in the ‘WebUI.authenticate̵ 7; method? Basically I am trying to encrypt the password that is passed to the ‘WebUI.authenticate̵ 7; method. Thank you.
  • Katalon Studio – Manual View – The start of a test script (2)
    • ben: Hello Don Great Website. Keep up the work. I learnt a lot. cheers Ben.
    • Lucas: Hi Don Pedro, Thanks for sharing a lot of great articles related to Katalon Studio and Selenium. I am Lucas from Katalon team. From your point of view, we’ve learnt alot to improve our product and add more valuable features...
  • Another success with Katalon Studio (1)
    • Mahesh Joshi: Hi Don, I just started following your blog in regards to katalon. I want to introduce katalon studio at my work we do manual testing at work at the moment. What approach I should use for proof of concept with katalon for...
  • What went wrong with Crime City? (34)
    • G D: One thing I have noticed is the awkwardness of items and the attack points and how you can earn them. I was pretty pathetic with attack points and then I played that limited time boss and got weapons that had attack points in the...
  • Disable the Quicken 2012 Registration Prompt (1)
    • Scott: Thanks this worked great and is better then having to upgrade to a subscription!