UI Automation with Katalon Studio: A Beginner’s Kit
TL; DR, You can build UI test automation without mastering any of the programming languages.
In every well-designed tech team, there is a balanced amount of developers taking care of the web, internal system, and applications. Next to them, ideally, are product owners, tech leads, designers and software testers.
Being the only QA person in my team gave me hard times, but also a lot of freedom in my actions, decisions, strategies and, most significantly, allowed me to try out new approaches.
In our project, we did not have any UI tests in place, only some FE unit tests. My task was to automate the UI for web desktop and mobile.
Coming from a manual testing background with little programming knowledge, I had to find a solution to automate our UI with the resources available.
How did I start? Baby steps:
Define user cases.
To be able to structure and identify the critical parts you should have a good understanding of the product and the project itself.
I recommend taking time to study the product, draft a solid smoke test, write down the common joints and specifications, and use them to not duplicate your work.
Having a good grip on the product makes it easier to target what has to be covered by tests and never break. Therefore, start building from the most relevant use cases.
For instance, in an e-commerce business retail, where the purpose of the website is to sell consumer goods or services, the main focus functionality is the checkout process.
The goal is to make sure that the process goes smoothly and it’s always possible to purchase. Because the checkout is a pretty complex test case itself, it requires many conditions to be fulfilled in order to be completed, so break it down into small test units.
Knowing what’s required from the business, draft small reusable test particles that are the preconditions to the actual end-to-end test.
“What are the steps to follow for the user to make a purchase?”
- Does the user need to be logged in?> Create “Login” test case.
- Does the user need to search or pick an item?> Create “Search” test case.
- Does the user need to add that item to the cart?> Create “Add-to-Cart” test case.
What else to automate, ordered by relevance:
- Frequently used functionality that introduces high-risk conditions. E.g. a payment process that uses data…
- Tests that tend to lead to human error. E.g free typing fields, validations…
- Tests that take a lot of effort and time when manual testing. E.g. testing with slow 3G…
- Tests that run on several different hardware or software platforms and configurations. E.g. Different browsers, different sizes, different OS…
- Tests that require multiple data sets.
- Repetitive tests that run for multiple builds.
What’s left to integrate are edge cases, unexpected behaviors, specific validations…
Select the Right Automated Testing Tool
Selecting the appropriate automated testing tool is essential for the QA person who is going to draft the project. There are enough automated testing tools on the market to get lost. A few names: Pingdom, Ghostinspector, Appium, Celery, Selenium, Cucumber, Espresso, Cypress, Mocha, Karma, Chai, Jasmine, Qunit, Percy… Learn more
From the most well-known Selenium to the newest trends, what matters is picking the automated testing tool that best suits your projects/teams overall requirements.
After months of researching various tools, evaluating the pros & cons overall, I found the right balance with Katalon Studio.
Katalon Studio is a fairly simple, straightforward automation testing tool that does not require advanced programming skills to write automated tests, while also offering a scripting mode for more advanced users and test case.
Here’s why and how it matched my requirement when I started.
- Easy to use and understand: Spending less time learning how to use the tool allowed me to start right away and verify if my efforts were effective from the first try.
- Comprehensive documentation: Katalon studio is quite a new tool (2015) therefore their documentation is not extensive, but the content available is well understandable also for non-tech people. Explore here
- Built on more stable and well-known testing frameworks: Developed on Selenium & Appium core, it offers the same functions already known in the automation world, just does it better! This also makes it easier to debug issues. For instance, when researching a solution to a problem and the help is not provided by the Katalon community, you can still filter for results in the Selenium community or simply in the Java/Groovy languages.
- Free and open source: What to add? Only free food is better than free software!
With thanks to Katalon studio and our devops, it was possible to integrate my tests with our CI, (Jenkins), and run the tests on the server at will, or automated e.g. before or after any deployment.
Do you want to know more about Katalon Studio and how it works?
Read my article: “Let’s get technical!”
Author: Francesca Morando
Linkedin profile: https://www.linkedin.com/in/fmorando/