QA automated test development is a software development process although it is seldom treated that way. Following software development practices can make the difference between the success and failure of an automated testing project. One of the most important aspects of any automated test design is the ability to share and reuse code. A well thought out design promotes code reuse, speeds development, and reduces the maintenance of automated tests. Most software tests are made up of combinations of simpler operations. This paper introduces the Sequencer design that facilitates the creation and execution of reusable operations. The idea behind the Sequencer is to carve the product under test into sets of functional operations. A test case data file describes the operations to be executed including their order and required data. The Sequencer's test driver executes the test by loading the test case and sequencing the operations.
Designing Reusable Test Automation