Using Executive Assertions for Testing.

Abstract
One of the ways of assuring greater reliability of software is to improve testing techniques. Three of the key problems associated with software testing are: choosing adequate test cases, assuring correctness of the results, and reducing, the high cost of testing. Some degree of automation is required to help solve these problems. By combining the automated capability of adaptive testing with the use of executable assertions, it is possible to execute a program with a large number of test cases over a wide range of input values. The usual goal of adaptive testing is to maximize some performance value (objective function) for the software by automated perturbation of the input parameters. This technique only indirectly leads to locating errors, because of the time-consuming tasks of examining the usual output from the program. In software testing, the primary goal is to locate the maximum number of errors rather than maximize the performance value. Since software errors can be detected by executable assertions, these assertions can be used to define an objective function for the Adaptive Tester so that a program can be tested automatically and a mapping made of its 'error space.' A search algorithm is used to generate new test cases based on past performance data about the number of assertion violations. Software testing can become much more efficient and effective through the use of adaptive testing with assertions, because such extensive testing increases the possibility of finding any existing errors and of improving software reliability. (Author)

This publication has 0 references indexed in Scilit: