The Center for Education and Research in Information Assurance and Security (CERIAS)

The Center for Education and Research in
Information Assurance and Security (CERIAS)

Design of Mutant Operators for the C Programming Language

Author

Hiralal Agrawal, Richard A. DeMillo, Bob Hathaway, William Hsu, Wynne Hsu, E.W. Krauser, R.J. Martin, Aditya P. Mathur, Eugene Spafford

Entry type

techreport

Abstract

Mutation analysis is a method for reliable testing of large software systems. It provides a method for assessing the adequacy of test data. Mothra [DeMi87] is a mutation analysis based software testing environment that currently supports the testing of Fortran 77 programs. Work is underway to enhance thsi tool along several dimension. One of these is the addition of multilingual capability. C is one of the languages that we plan to support. This report describes the mutant operators designed for the proposed ANSI C programming language. Mutant operators are categorized using syntactic criteria. Such a classification is expected to be useful for an implementor of mutation based testing system. Another classification, useful for the tester, is based on the nature of tests that can be conducted using mutation analysis. This classification exposes the gen erality and completeness of mutation based testing. Each mutant operator s introduced with illustrative examples. The rationale supporting each operator is also provided. An appendix provides a cross-reference of all mutant operators for ease of referencing. The design described here is a result of long deliberations amongst authors of this report in, which several aspects of the C language and program development in C were examined. We intend this report to srve as a manual for thew C mutant operators fir researchers in software testing.

Date

1989 – March – 20

Institution

Purdue University

Key alpha

Spafford

Affiliation

Purdue University

Publication Date

2001-01-01

Keywords

Mothra

Language

English

Subject

Mothra

BibTex-formatted data

To refer to this entry, you may select and copy the text below and paste it into your BibTex document. Note that the text may not contain all macros that BibTex supports.