THINK BEFORE DOING: THE TEST AUTOMATION SOLUTION
Developing automated tests is not difficult. What is challenging is delivering a solution that is effective (it works!) and is sustainable (it can be mantained at low cost). The test automation solution is a crucial component.
Developing test automation solutions (TASs) is not trivial, as just like other software systems, they have to be modular, scalable, understandable, reliable, and maintainable.
For example, the CICD pipeline topic that is often being discussed by development teams is part of the TAS, but that is only one component. What should we be looking at when designing it? What is the appropriate kind of “design thinking” that we should be doing in this case?
In this post I’d like to explore the notions of Test Automation Architecture (TAA) and Test Automation Solutions (TAS) as defined and elaborated in the Test Automation Engineer Syllabus of the International Software Testing Qualification Board.
I think that for the any complex software project, some aspects of the TAS are important to be considered in the early stages of the development. For example, key components of the TAS need to be identified, good practices for designing and maintaining the TAS need to made explicit, an appropriate architecture of the TAS need to defined. This could help identifying new requirements that are important for the development and testing environment and therefore that might be wiser to consider sooner rather than later.
What follows is a brief summary of some of the main parts of the Test Automation Engineer Syllabus of the International Software Testing Qualification Board.