Test automation is a vital step for any digital solution. With time, its architecture gets more complex, new features are added, and it acquires more users. Thus, your QA team needs to spend more time and effort to ensure the application usability and smooth user experience with no bugs and defects.
So here are the things you need to consider before the start of the automation initiative:
Define Success Metrics
It’s hard to measure success until you haven’t set up clear goals from the automation. It can be the complete automation of unit tests in the project, or increase the tests coverage by 25%, for instance. One more important thing to note is that these goals should be realistic, e.g. it may not sound feasible to reach 100% automated tests coverage if you just start. Setting up the goals correctly will help you to keep track of the progress and correctly measure the initiative outcomes.
Educate your personnel
Adopting new technologies requires some time for your team to learn them and adapt to the changes, that’s why project leaders should be responsible for organizing the proper learning process. Checking additional resources like a beginner's guide to automation testing will be a great place to start when compiling a training program for your employees. Also, if you use the licensed tools to help with the automation, often it’s possible to request educational materials from the vendor or dedicate time for examining the documentation (more suitable for open-source tools).
Select the tests for automation
Conduct a thorough audit for the tests that are running now in the manual mode and outline the ones that can be automated. It’s recommended to start from the tests that are running frequently and have a clear “yes-no” output, like contact forms,stress-testing, regression tests and other similar ones.
Now when we have a grasp of the right approaches to automation, the temptation to rush to the actual implementation is high, and here’s where the risks come.
So let’s check what is better to avoid:
Replacing all manual test cases with automation
There’s a misconception that the end goal of automation is leaving manual testing behind, however in fact, it will lead to failure, as not all the tests can be automated. Moreover, it’s even recommended to leave the tests related to design elements, exploratory tests and save some efforts to ad-hoc tests that are running without a specific scenario to ensure the random check ( as usually, many defects are discovered on this stage.
Starting Automation from the major tasks
The most common mistake is to start automation from the biggest parts. While it may seem reasonable as the bigger tasks can help to save more time, they can put the whole project in danger if something goes not by plan. It’s better to move from the simpler parts to start the automation from smaller tasks to the complex ones to discover some system peculiarities that can require a change in the approach.
Monolith tests structure and maintenance
As the project evolves, it will require changes in the scripting to always maintain it up-to-date with the requirements that appear with adding new functionality to the website or application. If the test scripts are developed in a monolith, the maintenance takes a significant amount of time and effort of your specialists. Moreover, many dependencies may be much harder to troubleshoot if something goes wrong. That’s why shorter separate test cases with keeping in mind the reuse possibility should be given a priority.
Adopting QA automation in your company is a long-term process, that’s why you cannot expect
immediate results from this initiative. Consequently, you can either give up too early or notice the negative impact when it's too late. So we gathered this list of “dos and don’ts” in hope that they will make the implementation process more smooth and streamlined.