Scalability is forgotten, until it is too late.
The definition of scalability is the capacity to be changed in size or scale, and to support an increasing number of capabilities. In the case of an automation framework, scalability translates in the number of users, application under test, executions and use-cases it can support over-time.
However, scalability is too often a missed requirement. Teams rush to implementation as there is no need for scale on a fresh project.
The problem is that scalability problems are caused by underlying design issues that are hard to solve when the whole framework has been built. That’s why you should care about scalability by design to set the right structure from the beginning, sustaining the lifetime of your test automation framework.
Follow Cerberus Testing for more open-source test automation.
Enable an increasing value through test automation
The need for scalability will materialize if the framework provides an increasing value to a set of stakeholders. For test automation, that’s about giving confidence to accelerate software delivery to cross-functional teams.
The first design consideration for scalability is to actually provide value to the different stakeholders of test automation. The more value you will deliver, the more scalability your framework will have to support.
A Product Owner, QA, or Software Engineer have different backgrounds and technical sensibility. An important design consideration for your test automation framework is therefore to foster the collaboration of these different profiles.
Providing them with a common user interface supporting back and forth sharing on the test automation lifecycle is essential. A restrictive interface reserved to technicians for scripting will miss the point of overall value creation.