What is Katalon Studio? A Distro of Selenium, Groovy and Eclipse

So the first question is, what is Katalon Studio?

Katalon Studio can best be thought of as a distro of Selenium, Groovy and Eclipse. It installs and configures the Selenium subsystem, the Groovy language subsystem and uses a customized version of Eclipse as the IDE.

After setup, it’s a ready to run environment where you have a place to write scripts, select web objects and manage your project with the Project Explorer. It also sets up drivers to use Firefox, Chrome, Safari or Internet Explorer.

One of the main features of Katalon is it’s object oriented approach to automation and referencing page objects. Instead of using XPATH notation in every line such as //div[@id=’wrap’]/div/div[3]/div/div/a, you create an object with that path information, then reference the object name in code. So the above would become, “Company Name” and the code would become findTestObject(‘Company Name’).

Right off the bat this is easier to read and understand. And if the path to Company Name changes, the Object reference is changed in one place and all tests keep working.

The tool itself is quite impressive, but there are some steep initial learning curves. That is to be expected, but it’s further complicated by some pretty terrible and limited documentation.

There is a fine list of commands, but the examples are very basic. The tutorials don’t do much more than show how to click the record button and press play. There is a lot of information out there, but it’s scattered. In many cases I found my answer tucked away in a completely different question.

To that end, I decided to put pull together the information I’ve found that answers many of the basic questions I’ve had. This includes how to create an object, and how to use a variable with that object, how to make an IF statement, a FOR loop, how to Set Text and Get Text, how to parse strings, click objects, work with dates, create random numbers and write to the Log Viewer.

To be honest, the answers are simple, but I spent a great deal of time searching for them and thought I would be a good idea to list real examples in a place where I and others can reference them.

Again, these are examples that have helped me, and are specific to my tasks. However, I feel they are general enough that others will benefit. I make no claims to being a developer and I’m certainly no expert with Katalon. I’m learning new things every day, but at this time, I have created tests that will run, read values, verify the results and perform tasks. These are the building blocks for much larger and more complicated tests.

But everyone has to start somewhere and I feel Katalon Studio is a very worthwhile tool for others like me, QA Engineers that are jumping into Selenium.

In addition to Katalon, I have found the following tools extremely helpful.

Over time I have build a handy library of code snippets and have them stored in TypeIt4Me. This works on the Mac, but other tools like Breevy or PhraseExpress would work for Windows.

I have the Groovy subsystem installed, so I can test code ideas outside the website without having to wait for pages to load or finding samples that match the data I need.

Finally, I have the Atom editor, which I use with Groovy to create samples. It’s a quality editor that has helped create and validate many blocks of code.

Other articles of interest:

One Response to What is Katalon Studio? A Distro of Selenium, Groovy and Eclipse

Leave a Reply

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

Recent Comments
  • Output status messages and test information by writing to the Log File Viewer in Katalon Studio (4)
    • Don Pedro: That is correct. You will need to add KeywordUtil.markFailed to change the Failures count. Other commands in the library are: KeywordUtil.markPassed KeywordUtil.markFailed KeywordUtil.markError KeywordUtil.markWarning
    • Nadim: This is really helpful … the only problem when log.logFailed executed it doesn’t update the results Failures count … still show Failures: 0
  • Working with Dates and Date Formatting in Katalon Studio (7)
    • Sharma: I want to choose date from any of the 12 months but I am not abel to do the same.
  • Securely storing passwords and login details with Set Encrypted Text in Katalon Studio (2)
    • sowmya: hi can u please help me how to read data from text file in katalon studio?
  • Custom Keywords for Custom Functions (1)
    • Sarah: Thank you for this. It helped me understand these better.
  • How To Disable the Quicken Registration Prompt (26)
    • Denise Defoor: I have a Quicken SE Version 6 .. My computer crashed a few weeks ago and I finally got it up and running. Now Quicken is telling me I must registered it. What? I have had this program for 20 years. How can I disable the...
    • Greg: For me, holding the *LEFT* CTL + Shift then clicking Online, One Step Update worked. I originally tried holding the right CTL + Shift, and it didn’t work. I’m using Quicken 2006, so I don’t know if it will work...
    • Joe SR>: My monthly income is deposited into my Credit Union account. I use debit whenever possible. I write checks manually and mail them. I use Quicken 2012 off-line only. I have entered all my money and investment accounts. I...
    • Prtet: Never say never….every time I swear I will never use Quicken again, I discover that there are still no viable alternatives. Amazing that there is no decent personal finance software.
  • Parsing Strings in Katalon – Split, Substring and Readlines (4)
    • Anjana: Hey thanks for the response It is quite strange but initializing variable for delimiter and it worked String splitFormat = ‘-‘ WebUI.println(var_CampaignDura tion.toString().split(splitFor mat)[0])...
    • Don Pedro: I’m not really sure what the difference is, but I don’t think the “-“ in the split is the same as the one in the date. String var_CampaignDuration = “05/13/2019-06/07/2019&# 8221; String[] parsedDateRange =...
    • Anjana: Hi, I tried the same thing to split the string, but does not work for me, Could you plz point out whats wrong Variable var_CampaignDuration has value “05/13/2019-06/07/2019&# 8221; String[] parsedDateRange =...
  • How to Block games by Title and Tag on Steam (2)
    • Marcus861: I made an acc just to say: Same bro
    • JACK: Thanks, same just wanted to block anime games in my discover
  • Create a new and random UUID for an API call (1)
    • Anonymous: Hi ! I found this blog few weeks ago and it’s really helping me out with my tests! Thanks a lot for the Katalon tips and tricks ! Keep up the good work 🙂