Thursday, 7 May 2009

When To Use Test Automation (part 1)

Test automation has many benefits in test organisations but there are costs as well as benefits associated with it. This post looks at what test automation is and some of its benefits.

What is it?

Test automation can be a documented script or executable that can be distributed to several persons for repetition (under controlled/defined conditions) of certain test steps/activities.

The controlled conditions may be set up as part of the automation script or may be a defined pre-requisite before executing the script - this pre-requisite could be another automation script.

The test steps/activities performed may be the triggers against the system under test (SUT) - whether this be a website or other piece of software that can be triggered by some action to change its state. The test steps should ideally involve some form of validation of the results, but this is not always the case (i.e. sometimes automation scripts are used to generate the same input data/activity and then the result/s are checked separately.)

Why use it?

By generating the same activity repeatedly (potentially hundreds of times) there is a reduction in the following aspects:
  • The labour costs to execute the test activities, including execution overnight or weekend.
  • The labour costs to analyse results (if the checks are built into the scripts).
  • The reduced human error when the test activities are repeated - i.e. if they are executed 100 times, then it is assumed that the steps and the order are the same 100 times.
  • The scripts can be incorporated into a framework for speeding up integration cycles.
Should it be used?

It seems like a no-brainer: With all of these benefits when do I start using test automation?

Well, there are some other considerations. These are:
  • Consider the disadvantages/costs.
  • Is there a business case for test automation?
A following post will look at some of the costs of test automation as well as other points to consider for the business case. There will be an additional post on test automation within incremental development projects, dealing with some of the issues and opportunities that raises.

No comments:

Post a Comment