Test Automation is one area where there is still a constant quest for betterment, simplicity, robustness and ease of use.
Some tools can help create robust, light and maintainable scripts, but are hard to use. Some others are easy but create brittle and temperamental tests. There is always a choice we have to make- we win some, we lose some.
Given this situation, when a tool comes forward with a promise to solve the pain points, it is but natural to be excited.
Over the past week, I have been working on simple yet strong automation software, Katalon Studio. It came with the UI capabilities that I so miss in Selenium WebDriver based automation and the flexibility that UFT eludes. And, it is totally free.
=> If you are interested knowing more, we have already covered one review post about this free tool here: Katalon Studio review
For today's Katalon Studio tutorial, I put the theory to test and installed Katalon Studio 4.5.
What You Will Learn:
- Katalon installation and start up
- Katalon User Interface at a glance!
- Let’s create our first test
- Katalon New Features
- What is good about this tool?
- What could be better?
- Recommended Reading
Katalon installation and start up
First off, the installation is super simple.
Follow these steps:
#1) Go to Katalon Studio and click on “Download”.
(Note: Click on any image for enlarged view)
You will need a valid email to activate your Katalon account. Personal email works- I registered with my Gmail.
#2) Choose the download version that you need
#3) Once download is complete – Go the folder on your computer and click on the Katalon.exe (I am using Windows)
#4) Set up starts:
#5) Enter your account info that you used to sign up:
Done- Katalon launches and you are ready to automate!
Katalon User Interface at a glance!
I can point you to each and every item and icon you will see in the interface, but I will be reinventing the wheel if I did so. Because Katalon User guide has done that for us already.
Here is a picture from Katalon documentation that is super helpful in getting familiar with the interface:
Let’s create our first test
Now that we are in, let’s jump into it.
Step #1: Create a new project
Go to File -> New -> Create Project and enter the project name in the below window that shows up:
You will now see that your project will open up and you will see the following items available in the Test Explorer:
Step #2: Add objects to the repository
There are many approaches you can take to creating your test case. Record your test or generate lines of code after adding the objects first. I am following the latter approach here.
Here is what I need to do now: Spy my application and add objects. To do this, go to Object repository tab- and since I am working on a web application I will click on “Spy Web” option.
The below Object Spy window opens up. Enter the starting URL and choose what browser it should open up in.
This will launch the URL in the browser selected. I am going to ‘http://carguruji.com/shop' on chrome.
As you can see, whenever you hover over or mouse-over an object on the page, it shows a way you can capture the object:
Capture all the objects you need for the test by pressing “Alt+~” the objects will now show in the Object repository window under captured objects:
When you have all the objects available, click on “Add to Object Repository”
At the end of it, you should have all the objects you need for your test under the Object Repository in the folder structure of your choice:
Now we are ready to add the steps to the test.
Step #3: Create test case
Here is what I want my test case to do:
- Launch the site
- Search for DVD
- Click on “A bug’s life” DVD
- Check if the price displayed is $35.99
This might not be a perfect test, but this will do for the demo purposes.
So, let’s create the steps in Katalon.
Navigate to the Test Cases node in the Test Explorer. Right click and ‘New ->Test Case’. Enter the test case name and a description below. I am going to call this “ViewProductPrice” test case.
A brand new tabular format opens up:
Selenium IDE users will find this instantly familiar as this has a very similar appearance to it. However, I find this closer in behavior with the HP UFT/QTP keyword view because it lets you add output variables, looping statements, etc.
Step #4: Add test steps
To add test steps, simply click on “Add” and on the newly inserted row click on the “item” column to add a keyword/method/action that you intend to perform.
For example: The first thing I want to do is “Open Browser” and go to a certain URL.
Here is how you can do that:
So, click on the following things to do the respective tasks:
- Item: To choose what to do
- Object: Where-on what object
- Input: What to supply to the step
- Output: Where to store the return value
Similarly, keep adding all the steps. It is a good idea to add some description to each step as it will make more sense when you are re-reading the test. To do so, click on the description column and enter the description as below:
This is how your test would appear:
Once done- You are ready to run.
But before that let me quickly show you the “Script” view of this script. Click on the “Script” tab on the bottom of the page to see the script mode:
Users, who are much more comfortable to work from this mode, can use this over the manual mode.
Step #5: Run your test
To run your test, click on “Run” from the menu and alternately you can choose the browser you want this to run on.
Once done, your test results will show as below:
Step #6: Improve
Now that you are done with your first test, here are a few next steps:
- Create more tests, add them to the test suite and run them all at once
- View test reports after test suite execution
- Parameterize your tests
- Include error handling, etc.
- Create custom keywords/packages
- Call tests and reuse code
Katalon New Features
I used Katalon 4.5 version. This is currently the newest version of Katalon available for download. Since I have not experienced the earlier versions first hand, I cannot really make a claim about knowing what has improved from before.
But when I looked at the documentation I was glad Katalon brought the following features into its ensemble because these are some of the things I have enjoyed using:
1) In-module help: When you click on the “?” in the test case module it takes you the help documentation page that shows information about the test case manual mode. Likewise, every module has a handy help for that portion of the tool in the form of the embedded help icon.
2) Content assist in the script mode: I seriously don’t know what I would do when the IDEs stop prompting me object names and method calls/syntaxes. :)
3) Renaming test execution reports: Unless we have the super human memory it is impossible to know which test ran at what time and what date- but imagine that is the only way to find your test results. Thankfully, with version 4.5 of Katalon, you can rename a test execution report to a more descriptive name.
For a full list of improvements, check out the Katalon 4.5 release notes here at: https://docs.katalon.com/display/KD/Version+4.5
What is good about this tool?
1) Easy to install. Works on most common Operating systems and Browsers: https://docs.katalon.com/display/KD/System+Requirements
2) Web, Mobile, and WebService testing- All in one
3) Completely free to use
4) Works for both technical and non-technical testers
5) Eliminates the complexity of setup and framework definition that tools such as Selenium pose
6) Brings the robust QTP-like UI/Object recognition to a free automation tool- You can add multiple properties to recognize an object and not have to choose/guess which locator works best.
7) Support data driving your tests inherently: Test data can be created in the tool itself or can be picked up externally from Excel sheets or database.
Supports the following Databases:
8) Integrates with requirement management and test management tools JIRA and qTest respectively. The integration is easy to establish with the help quick set up wizard. So, technical tool administrators are not necessary to make Katalon talk to the test management counterparts.
9) Run multiple tests at once as a Test Suite
10) Git integration for source code management and sharing
11) Robust debugging and reporting
12) Built-in error handling- No more try and catch blocks, no more complex functions to gracefully exit your failed script. Define what needs to happen when your test fails at the project settings:
What could be better?
Please note that I am nitpicking here:
- The UI is at times a little clunky.
- If there is an error in the script mode, it does not let you navigate back to manual mode – I found this limiting at times.
- For a complete list of known issues check here:
Finally, “Does Katalon Studio live up to the promise?”- I would say, YES! Although I have not tried the web services and mobile testing part of the tool yet, I am fond of its web testing capacity.
If you need a free automation tool that does not need complex technical knowledge and setup, this might be super helpful.
You can also explore more and learn this tool with the help of these video tutorials.
About the author: This hands-on tutorial is written by STH team member Swati.
Hopefully, this article has given you the basic details to get started. Please give it a try and let us know your feedback. If you are already a Katalon user, do share your experiences.