What is Katalon Studio?
Katalon Studio is a single low-code tool for multiple purposes in test automation for creating web, mobile, desktop, and API tests. Katalon Studio is easy to use and robust to expand.
Katalon Studio is a part of the Katalon suite of tools which also include Katalon TestOps, Katalon TestCloud and Katalon Recorder.
Katalon Studio comes in two flavors: Katalon Studio, which is a free download from Katalon, and Katalon Studio Enterprise, which is $1,899 per user per year. There is also the option to purchase Katalon Runtime Engine for executing tests within your CI/CD pipeline. It costs $1,499 per floating license per year.
What Are the Benefits of Using Katalon Studio?
Katalon Studio is a test automation tool with a number of benefits, such as:
- Build low code, resilient automated tests
- Easy setup for On Demand Testing
- Built-in Project Templates
- One place for end-to-end testing
- Accurate Object Spying
- Productive Record-and-Playback
- Flexible Test Design Options
- Advanced Debugger
- Fast scripting with Keyword-driven Testing
Question: Do I need to install anything special/specific for HeadSpin?
Answer: No, testing on the HeadSpin Platform is supported by the standard installation of Katalon Studio with no special modules or libraries required. You don’t even have to install Appium locally
Why Would I Want to Use the HeadSpin Platform for Automation Testing with Katalon Studio?
There are a number of reasons why you would want to utilize the HeadSpin Platform for your Katalon Studio automation tests:
- Diversity of available devices and locations around the world
- No limit on how many tests can run concurrently
- Utilize the comprehensive KPI data capture, including all network traffic to the device
- Use the Regression Analysis feature of HeadSpin to conduct in-depth session analysis and comparison
- Ease of reporting with HeadSpin’s Dashboard capabilities
How Do I Create a Recording on a HeadSpin Device with Katalon Studio?
It is very easy to record your interactions with a mobile application or mobile web browser using Katalon Studio. To work with a HeadSpin device, you will need to utilize Katalon Studio’s Remote capability. To do this, you will need to complete the Remote form and set some values before you get started.
Configure the Project Settings
To get to the Remote form, you will need to click on Project>Settings on the Katalon Studio Main Menu.
Under Project Settings, then expand the Desired Capabilities section and click on Remote:
This will bring up the Remote form where you will need to input the values for the Headspin Web Driver URL and other Desired Capabilities required for your recording.
You will need to get the Remote server URL for the device from the HeadSpin platform UI. For the device that you want to use, click on the three vertical dots (ellipsis, …) to the far right:
In the pop-up, select Automation Configuration.
Copy the Web Driver URL value by either manually highlighting the value and copying it to the clipboard, or click on the Click to copy icon.
Paste this value into the Remote server URL field:
Then you will need to select the Remote server type. There are two choices: Selenium and Appium. For mobile, select Appium.
Next you will need to select the Appium driver type. Again, there are two choices: iOS and Android.
After you have made those selections, you can add the Desired Capabilities values for the device and the application. Click on Add and then enter the Desired Capability name and its value.
For the device UDID/serial number, again click on the vertical ellipsis ->Automation Configuration and copy the value to paste into the Desired Capability.
Fill in the other values as required for your test script. Minimum values are device ID and application identifier: appPackage and appActivity for Android, bundleID for iOS. Click on Apply and Close when finished entering all of the Capabilities.
Record A Script
To start recording a script, click on the ‘Record Mobile’ dropdown and select Remote Devices.
In the Mobile Recorder window, Cloud Application ID is a required field. For HeadSpin, all you need to enter is * (asterisk) as a wildcard since you have already specified the application to use in the Remote Desired Capabilities.
Once the wildcard is entered, the Start button will become enabled. Click on that to start your recording session.
When the device and application are ready, it will show up in the Mobile Recorder window with all of the current objects identified.
If you would like to view the device in the HeadSpin UI, simply click on the blue magnifying glass next to the device’s listing in the Device List of the Remote Control page.
Then you can view the device as the recorder is interacting with it.
On the Katalon Studio Mobile Recorder, now interact with the application objects and leverage the capabilities and functionality of the recorder. For example, tap on objects, enter text, swipe, etc.
Your script captures all of your interactions with the application.
When you are finished, click on Stop (this will insert a Close Application step) and then click on Save Script (provided that the script is what you want to save).
You will be prompted on where to store the captured objects, select as appropriate for your situation and click OK.
You will then be prompted to name your test case and select the appropriate folder.
At this point, your script will be generated and then you will have the opportunity to edit as desired to finalize your script.
How Do I Run My Test Case on a HeadSpin Device?
Utilize the Values You Entered in Project Settings
To execute your test case on a HeadSpin device, you will leverage the values that are in the Project > Settings that you entered earlier. If desired, you can add some HeadSpin-specific Desired Capabilities to take advantage of the features that the HeadSpin platform offers, such as recording your session and assigning your test to a User Flow. You can reference the HeadSpin specific Desired Capabilities at this page: https://ui.headspin.io/docs/appium-capabilities.
In the below example, headspin:capture is set to true, to allow recording of the session and capture the network traffic (note: it is a Boolean Type of Desired Capability that should be set to true) and headspin:testName is set to Demo_Insurance_App to assign this session to the Demo_Insurance_App User Flow.
Execute Your Test Case
To execute your test case, click on the ‘Run’ button dropdown and select Remote. This will leverage the values that you have in your Project > Settings.
When you click on Remote to start the test case execution, the Job Progress window will appear so you can track the progress.
While the test is executing, you can view the device in the HeadSpin UI. Again, click on the blue magnifying glass and you will see what’s happening on the device.
This screenshot shows the Recording button as green, denoting that this test case execution is being recorded.
At the conclusion of the test, the Job Progress window will show you the status:
HeadSpin Performance Session
If you enabled the headspin:capture Desired Capability, you can view the Performance Session to view the results captured by HeadSpin.
To review the recorded session, click on the “P” tab in the HeadSpin platform and select the session:
Then you can click on the Waterfall UI button of your captured Performance Session and review the information captured by HeadSpin during the test execution.
Continuously monitor and optimize quality of experience across applications, devices and 3rd-party interfaces with HeadSpin’s mobile app performance testing insights. Learn More!
Conclusion
You can easily configure Katalon Studio to utilize the devices within HeadSpin for both recording and creating tests as well as test execution. This allows you to take advantage of two industry-leading technologies in the testing market: test automation from Katalon and diverse device endpoints from HeadSpin.
Combining these two technologies will provide you with a world-class testing environment and will allow you to test faster with more comprehensive test coverage and in-depth analysis after the tests have been completed.