Test Automation: An Architected Approach

[article]
Summary:

The test automation architecture championed here is based on the idea of automation code as an application in its own right. Code reuse, encapsulation (on many levels), recursion, object-oriented concepts, testing maturity and usability (of automation by non-technical business analysts) are covered.

In the world of automated testing, everyone throws around buzzwords like "data-driven," "data flows" and "error handling," but what does it take to produce automation that is efficient, maintainable and usable? 

Successful automated testing requires a considerable financial investment. Simply installing an automated testing tool and recording scripts may jumpstart the initial automated testing effort, but this approach will become difficult to maintain and therefore more expensive.

A more cost-effective solution is an architected solution. Providing the right architectural framework for automation development means that the automation code can be used for longer periods of time with less maintenance than a simple record/playback solution. This translates to a significant savings over the course of longer projects, and the ability to more thoroughly test an application with less employee overhead.

The test automation architecture championed here is based on the idea of automation code as an application in its own right. Code reuse, encapsulation (on many levels), recursion, object-oriented concepts, testing maturity and usability (of automation by non-technical business analysts) are covered.

The result of this architecture is reliable automation code with scripts that can last the entire life of the product (not just the project) and that can be used and enhanced by business analysts who have little to no knowledge of automated testing.

 

About the author

StickyMinds is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.