Improving test suites via operational abstraction

Download: PDF, PostScript, Talk slides (PowerPoint), Talk slides (PowerPoint).

“Improving test suites via operational abstraction” by Michael Harder, Jeff Mellen, and Michael D. Ernst. In ICSE'03, Proceedings of the 25th International Conference on Software Engineering, (Portland, Oregon), May 6-8, 2003, pp. 60-71.
A previous version appeared as “Improving test suites via generated specifications” by Michael Harder. MIT Laboratory for Computer Science technical report 848, (Cambridge, MA), June 4, 2002. Revision of author's Master's thesis.
A previous version appeared as “Improving Test Suites via Generated Specifications” by Michael Harder. Masters thesis, MIT Department of Electrical Engineering and Computer Science, (Cambridge, MA), May 2002.

Abstract

This paper presents the operational difference technique for generating, augmenting, and minimizing test suites. The technique is analogous to structural code coverage techniques, but it operates in the semantic domain of program properties rather than the syntactic domain of program text.

The operational difference technique automatically selects test cases; it assumes only the existence of a source of test cases. The technique dynamically generates operational abstractions (which describe observed behavior and are syntactically identical to formal specifications) from test suite executions. Test suites can be generated by adding cases until the operational abstraction stops changing. The resulting test suites are as small, and detect as many faults, as suites with 100% branch coverage, and are better at detecting certain common faults.

This paper also presents the area and stacking techniques for comparing test suite generation strategies; these techniques avoid bias due to test suite size.

Download: PDF, PostScript, Talk slides (PowerPoint), Talk slides (PowerPoint).

BibTeX entry:

@inproceedings{HarderME03,
   author = {Michael Harder and Jeff Mellen and Michael D. Ernst},
   title = {Improving test suites via operational abstraction},
   booktitle = {ICSE'03, Proceedings of the 25th International Conference
	on Software Engineering},
   pages = {60--71},
   address = {Portland, Oregon},
   month = {May~6--8,},
   year = {2003}
}

(This webpage was created with bibtex2web.)

Back to Program Analysis Group publications.