Katalon Studio for Test Automation – Simple & Powerful

Recently I came to know a Tester/Developer friendly Test Automation tool Katalon Studio. I am really impressed with the provided features of Katalon Studio 4.5. I have seen all features which are required for Test Automation. I can say this is a comprehensive Test Automation Tool, a cluster of Selenium, Appium, QTP, SOAPUI for both Web & Mobile Apps testing.

What is Katalon Studio

Katalon Studio is a Free powerful test automation toolset for testers & developers solving many challenges we face in Test Automation. This tool can be used for Functional Testing (Web & Mobile), Webservices Testing as well. Katalon Studio hides all technical complexities and provides us a powerful & friendly UI with the manual mode. A tester can simply drag-drop, select built-in keywords and automate test cases with ease. Katalon comes in handy with all necessary software Android SDK, Web drivers to drive browsers, and other required dependencies.

Recently I came to know a Tester/Developer friendly Test Automation tool Katalon Studio. I am really impressed with the provided features of Katalon Studio 4.5. I have seen all features which are required for Test Automation. I can say this is a comprehensive Test Automation Tool, a cluster of Selenium, Appium, QTP, SOAPUI for both Web & Mobile Apps testing.

What is Katalon Studio

Katalon Studio is a Free powerful test automation toolset for testers & developers solving many challenges we face in Test Automation. This tool can be used for Functional Testing (Web & Mobile), Webservices Testing as well. Katalon Studio hides all technical complexities and provides us powerful & friendly UI with the manual mode. Tester can simply drag-drop, select built-in keywords and automate test cases with ease. Katalon comes in handy with all necessary software Android SDK, Web drivers to drive browsers, and other required dependencies.

0 (1)

Why should I use Katalon for Test Automation

  • First of all it is a Freeware. Freely available to the testing community
  • Easy installation, Configuration is not at all a challenge
  • Built-in project templates
  • Record & Playback feature
  • Limited coding skill required
  • Built-in object repository,object identification
  • Fully supports Web, Android, iOS and API testing
  • Database Testing can be done (Coding skill required)
  • Supports Java/Groovy languages
  • Supports Data-driven Testing
  • Experienced programmers can create and execute sophisticated test scripts.
  • Can be executed in Chrome, Firefox, IE, Headless Browsers..
  • Can be integrated with GIT, JIRA, Jenkins, qTest, Teamcity, Kobiton, Slack
  • Detailed Reporting Structure
  • Katalon Community Support for questions and updates
  • Detailed documentation & user manual

Here you can find the comparison of tools with Katalon.

Who doesn’t love the tool which helps testers with no programming experience to automate their applications just by using recording and built-in keywords to create and execute test scripts easily and faster. I can say this framework is very sophisticated, you can also tag test cases into multiple test suites (sanity, regression). You can import Test Data from your local system or database or you may create data internally within the IDE. We can declare global variables to validate in test cases. Also, reports get generated with detailed information (HTML, CSV formats).

0 (2)

I am not only referring to Web Applications, we can use same Katalon IDE to automate Mobile Apps with ease. We just need to install Appium in our machine and configure the path in settings with few clicks. You can simply automate the app using built-in mobile keywords. Anyway, Katalon allows you to write custom code depends on your requirement.

0 (3)

I used to buy hours to create a Page Object Model in Selenium. But with Katalon Object Spy a built-in feature which helps us to identify the objects much faster and easier. It’s similar to Object Spy in QTP. Now, this is really a time-saving feature.
0 (4)

We can also add identified objects to our repository with one click, which needed for reusability, easy maintenance, easy debugging.

I generally use SOAPUI or Custom code in Java to test the API’s, now with Katalon it is so simple to test the API and capture the report in detail. This supports both REST & SOAP.

0 (5)

As I said, this can be integrated with your GIT repository, CI(Jenkins), Test Management tools like Jira, qTest. I believe we can always code to integrate tools like Sikuli, AutoIT which depends on our requirement.

Who doesn’t like it when all these powerful & useful features come in handy. This is an All-in-one tool. Would you like to try it? You can download it from here. You can always share your opinions/feedback/suggestions by posting a comment

I should thank Katalon Team for bringing this powerful tool as a Freeware to the testing community.

Other References

Katalon vs Selenium

Katalon Documentation

Katalon Tutorials

Advertisements

Swipe Gesture – Appium

You already know how to Scroll using Android driver. Now let’s see how to Swipe. Generally while swiping on a device, we move our finger to some X&Y coordinates. We can use TouchAction class to swipe here and there. Also we can use Android Driver function ‘swipe‘ by using screen width and height and we can also use javascript executor to swipe. Here I’m not using any app for demonstration.
Let’s quickly take a look at the code:

Continue reading

Scrolling Gesture – Appium

You already know how to perform longpress gesture using Appium. Now let’s see how to perform a Scroll. I hope you know what is a ‘scrolling‘. We do it often in day to day life. As a quick reference swiping your finger upwards will perform a scroll down and swiping down your finger will perform a scroll up. Just like ‘TouchAction‘ class we also a ‘scrollTo’ function in-built. Lets quickly take a look at the syntax  &  Example ‘driver.scrollTo(“sampleScroll”); ‘ 

Continue reading

Long Press Gesture – Appium

You already know, how to launch a web browser using Appium and launching a Native App using Appium. Now lets talk about user interactions. Just like in Selenium – Actions class, here we have TouchAction class to perform Mobile gestures like long press, drag and drop, swipe, and zoom etc. In Android by pressing an element for much long we will get other information about a feature. Let’s say, to uninstall an app we generally longpress on the app icon till we see a delete icon on the screen. So these kinda operations can be handled by ‘TouchAction‘ class

Continue reading

Launching Native App in your Android device using Appium

You already know what are Desired Capabilities and how to launch a web browser from previous article. Now lets launch a native app. You also know how to create an AVD, if not then take a look at this article. Get the device name using the command ‘adb devices‘. Here, we are going to take an example of the Android calculator app.

Things to do:
Launch emulator
Launch Appium server – type ‘appium
Get the device name – type ‘adb devices
Get the package name and activity name of calculator app – refer article
Set the capabilities (package name and activity name) – refer article

Xpath001 Continue reading

Launching a web browser in your Android device using Appium

From the previous article you know what are Desired capabilities. Now we will quickly launch a browser using in your device. Before diving in, you need to connect your device to the system (Debugging – On). And get the device name using the command ‘adb devices’. By default, Appium will run on port 4723. You can change it as per your need. We will see that later. Just copy and paste the below code, I will explain code after the execution.

Things to do:
Connect your device or launch emulator
Get the device name – type ‘adb devices
Set the capabilities – refer article
Launch Appium server – type ‘appium

EmulatorStarted

Continue reading

Finding Package Name, Activity Name of .apk file

Objective: Finding Package Name, Activity Name, Device Name
As you know, to start a session we need to set Desired Capabilities. Among those, we need to set Package name and Activity name capabilities as well. There are several methods to find package and activity name.
* Using Apk.info app
* By extracting AndroidManifest.xml
* By using commands in Terminal
* By using UIAutomator

Continue reading

Finding elements using locators in Appium

As shown in the previous article, we can identify elements of Native & Hybrid apps using UIAutomatorviewer. There are few locators used to locate elements for native and hybird apps. Okay let’s look into it. Before that launch your emulator or connect real device. If you don’t know how, check my article. We’ll locate elements of Calculator app. Now Launch UIAutomatorviewer and capture the screenshot of calculator app.

UI_A_LocateElement

Continue reading

Finding elements using UIAutomatorViewer

Just like in Selenium there are few locators to identify elements in mobile apps. Generally, to find the elements we use UIautomator for native and hybrid apps. This article helps you to know about UIautomator and other various locators. As you know how to create a new AVD from my previous article, we will use an Emulator and Calculator app to identify elements in the calculator app. Within no time you’ll learn how to use UIautomator and locating the mobile app elements. Just hold tight and follow the below steps:

Emulator

Continue reading

Desired Capabilities for Appium

Desired Capabilities got introduced in Selenium to work with lot of browser capabilities like handling browser cookies , SSL security popup blah blah.
But why are we using this in Appium?
Using Desired Capabilities we can communicate with Appium server by sending a POST request, saying that I’d like to start a session with so and so platform and platformversion, browser etc…Now the server understands it and starts a session with the capabilities which we have set. Still confused?
Desired capabilities is a JSON object (keys and values pair). So, there are few capabilities in-built. We need to set the capability name as ‘key’ and capability value as ‘value’. The capabilities keys are case sensitive. You need to follow correct syntax to set key and value. Without setting these capabilities, you can’t even establish a session.

Continue reading