Tool support for testing is weakest in the area of test design and
test case generation. Tool support is strongest in the area of running tests,
analysing the results and managing test software. Human involvement is
required to specify the tests, but tools should do most of the tedious,
repetitive work involved in running them. Automated support for regression
testing is especially good. In an evolving system this is where it is most
needed. The bulk of software costs usually accrue during the operations and
maintenance phase of a project. Often this is due to the amount of
regression testing required to verify that changes have not introduced faults
in the system.
The following subsections discuss the capabilities of test tools in
more detail.