In their paper, Bird and Munoz describe an approach to the testing of several large systems. This methodology starts with the Syntax text case generators first described by Hanford [1] and includes more recent ideas from the works of Bazzichi and Spadafora [2]. Bird and Munoz, however, have resolved the primary limitation of the Syntax test case generators, and have found an approach to the testing of executable code. Although Bird and Munoz’s tool requires recoding for each application that is tested, they explain that the changes are minimal, and thus have created a flexible testing system.
The paper begins by reviewing the significant works others have completed in the area of automatic test case generation, providing an accurate background of the current state of this field. Next, Bird and Munoz describe the functionality of their tool, along with its limitations. This test case generator creates syntactically and semantically correct test cases that are self-checking, using random statement selection with a biasing factor (weighting). The final two-thirds of this paper describe two detailed examples of the use of this test case generator in a Graphics and in a sort/merge application.
This paper is a significant step forward in the automatic test case generation field, providing an excellent description of the random, automatic generation of self-checking code. Bird and Munoz also accurately describe the limitations of this tool, and provide a very good analysis of possible uses for automatic test case generators.
The only major drawback of the paper is the lack of analytical discussions on the test results. Given this automatic generation of test cases, accurate Mean-Time-Between=Failure (MTBF) statistics can be gathered and analyzed. Coverage statistics can also be gathered using meters in the test generator. Both numbers can be used for general reliability comparisons, possibly leading to software reliability standards. Unfortunately, this paper fails to discuss either statistic.
In general, this paper is a further step ahead in the field of automated testing. It should be read by all interested in the state-of-the-art of software testing.