When discussing automation testing, a world of options is available, ranging from very expensive tools to in-house infrastructure built with open-source frameworks. Each has its advantages and disadvantages. A good automation testing infrastructure should be constructed based on the test automation pyramid, taking into account a multi-layered automation solution.
Deciding what, how, and where to implement automation is a process that should be undertaken by the quality leadership in the R&D department in collaboration with R&D leadership. Additionally, a good understanding of the system architecture and the code itself is necessary. By combining this knowledge with different solutions, one can select the best options for the automation testing framework.
Moreover, there are numerous other quality concerns that need to be addressed for the automation framework and infrastructure to be effective and guarantee high-quality products. To name a few:
- Who will write the automation tests for each layer?
- Who will be responsible for maintenance?
- What should be automated, and what doesn’t need automation?
- To which layer does a test case belong?
- How can we avoid duplicating tests across different layers?
- When and where will the automation execute?
- In which environments should specific tests be executed?
- What reports will the framework produce, and who is responsible for following up on issues?
- What are the right processes to put in place to support the reliability and maintenance of test cases?
- What gateways should be implemented, and where?
- What is our end goal, and how can we ensure we’re moving in the right direction?
To effectively deal with all of the above and much more, QA automation and manual personnel, as well as developers, need to be educated and trained. A tool without the right training is just a tool. To achieve a high-quality product, you also need the right mindset – the quality mindset.