« 2. Introduction | Main | 0. Design Patterns for Customer Testing »
January 10, 2005
1. Abstract
This paper presents design patterns for automated customer tests. As applications continue to evolve, these patterns help lower maintenance costs and facilitate the creation of new customer tests. Each design pattern includes a definition, a discussion of the pattern details highlighting its suitability for customer test automation, and a code sample illustrating its use. These design patterns can be used regardless of programming language and test tool. As such, specific test tool code is omitted in this paper and for consistency examples are given in Java, using the JUnit testing framework. This paper aims to illustrate that test code should be treated with the same importance as application code. This assertion has the following consequences:
- tests should have a clean design that facilitates code reuse without duplication
- tests should be easily adaptable to modifications in the application
- tests should be easy to create
- tests should have a low maintenance cost
Using application development design principles, automated test development can become a well factored art form that is adaptable to application changes. This adaptability results in lowered maintenance costs and easier test creation.
Posted by Misha Rybalov at January 10, 2005 08:34 PM