On the Automated Generation of Program Test Data
- 1 December 1976
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. SE-2 (4), 293-300
- https://doi.org/10.1109/tse.1976.233835
Abstract
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.Keywords
This publication has 9 references indexed in Scilit:
- A System to Generate Test Data and Symbolically Execute ProgramsIEEE Transactions on Software Engineering, 1976
- An Approach to Program TestingACM Computing Surveys, 1975
- Mechanical program analysisCommunications of the ACM, 1975
- Methodology for the Generation of Program Test DataIEEE Transactions on Computers, 1975
- Testing large software with automated software evaluation systemsIEEE Transactions on Software Engineering, 1975
- Toward a theory of test data selectionPublished by Association for Computing Machinery (ACM) ,1975
- A new approach to program testingPublished by Association for Computing Machinery (ACM) ,1975
- SELECT---a formal system for testing and debugging programs by symbolic executionPublished by Association for Computing Machinery (ACM) ,1975
- Automated aids fob reliable softwarePublished by Association for Computing Machinery (ACM) ,1975