|
ABSTRACT
Mutation analysis is a powerful technique for testing software systems. In the Mothra project, conducted at Georgia Tech's Software Engineering Research Center, mutation analysis is used as a basis for building an integrated software testing environment. Mutation analysis requires the execution of many slightly differing versions of the same program to evaluate the quality of the data used to test the program. In the current version of the Mothra system, a program to be tested is translated to intermediate code, where it and its mutated versions are executed by an interpreter.In this paper, we discuss some of the unique requirements of an interpreter used in a mutation-based testing environment. We then describe how these requirements affected the design and implementation of the Fortran 77 version of the Mothra interpreter. Other topics covered include the architecture of the interpreter and many of the design elements that it incorporates. We also describe the intermediate language used by Mothra and the features of the interpreter that are needed for software testing.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Alfred V. Aho , Ravi Sethi , Jeffrey D. Ullman, Compilers: principles, techniques, and tools, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1986
|
| |
2
|
2. Bilsel, M. S., A Survey of Software Test and Evaluation Techniques, Technical Report GIT-ICS-83/08, School of Information and Computer Science, Georgia Institute of Technology, April, 1983.
|
| |
3
|
|
| |
4
|
4. Budd, T. A., DeMillo, R. A., Lipton, R. J., and Sayward, F. G., The design of a prototype mutation system for program testing. AFIPS National Computer Conference Proceedings, Vol. 47, 1978, pp. 623-627.
|
| |
5
|
5. Budd, T. A., and Hess, R. L., EXPER Implementation Notes, unpublished manuscript.
|
| |
6
|
6. DeMillo, R. A., Lipton, R. J., and Sayward, F. G., Hints on test data selection: help for the practicing programmer. Computer 11, 4 (April, 1978) 34-41.
|
| |
7
|
7. DeMillo, R. A., Lipton, R. J., and Sayward, F. G., Program mutation: a new approach to program testing. Infotech State of the Art Report, Software Testing, Volume 2: Invited Papers, Infotech International, 1979, pp. 107-126.
|
| |
8
|
|
| |
9
|
9. DeMillo, R. A., and Spafford, E. H., The Mothra Software Testing Environment, Technical Report GIT-SERC-87/01, Software Engineering Research Center, Georgia Institute of Technology, January, 1987.
|
| |
10
|
10. Girgis, M. R., and Woodward, M. R., An experimental comparison of the error exposing ability of program testing criteria. Workshop on Software Testing Conference Proceedings, IEEE Computer Society Press, July, 1986, pp. 51-60.
|
| |
11
|
11. Howden, W. E., Reliability of the path analysis testing strategy. IEEE Transactions on Software Engineering SE-2, 3 (1976) 208- 215.
|
| |
12
|
12. Howden, W. E., Functional testing and design abstractions. Journal of Systems and Software 1, 4 (1980) 307-313.
|
| |
13
|
13. Howden, W. E., Weak mutation testing and completeness of test sets. IEEE Transactions on Software Engineering SE-8, 4 (1982) 371- 379.
|
 |
14
|
|
| |
15
|
15. Nowitz, D. A., and Lesk, M. E., A dialup network of UNIX systems. UNIX System Manager's Manual, 4.2 Berkeley Software Distribution, Virtual VAX-11 Version, Computer Science Division, University of California at Berkeley, March, 1984.
|
|