Issue No. 04 - December (1976 vol. 2)
C.V. Ramamoorthy , Department of Electrical Engineering and Computer Sciences and the Electronics Research Laboratory, University of California
Software validation through testing will continue to be a very important tool for ensuring correctness of large scale software systems. Automation of testing tools can greatly enhance their power and reduce testing cost. In this paper, techniques for automated test data generation are discussed. Given a program graph, a set of paths are identified to satisfy some given testing criteria. When a path or a program segment is specified, symbolic execution is used for generating input constraints which define a set of inputs for executing this path or segment. Problems encountered in symbolic execution are discussed. A new approach for resolving array reference ambiguities and a procedure for generating test inputs satisfying input constraints are proposed. References to arrays are recorded in a table. during symbolic execution and ambiguities are resolved when test data are generated to evaluate the subscript expressions. The implementation of a test data generator for Fortran programs incorporating these techniques is also described.
test data generator, Array reference ambiguity, constraint solver, path generation, symbolic execution
S. Ho, C. Ramamoorthy and W. Chen, "On the Automated Generation of Program Test Data," in IEEE Transactions on Software Engineering, vol. 2, no. , pp. 293-300, 1976.