Title :
TestEra: a novel framework for automated testing of Java programs
Author :
Marinov, Darko ; Khurshid, Sarfraz
Author_Institution :
Lab. for Comput. Sci., MIT, Cambridge, MA, USA
Abstract :
We present TestEra, a novel framework for automated testing of Java programs. TestEra automatically generates all non-isomorphic test cases within a given input size and evaluates correctness criteria. As an enabling technology, TestEra uses Alloy, a first-order relational language, and the Alloy Analyzer. Checking a program with TestEra involves modeling the correctness criteria for the program in Alloy and specifying abstraction and concretization translations between instances of Alloy models and Java data structures. TestEra produces concrete Java inputs as counterexamples to violated correctness criteria. The paper discusses TestEra´s analyses of several case studies: methods that manipulate singly linked lists and red-black trees, a naming architecture, and a part of the Alloy Analyzer.
Keywords :
Java; automatic programming; data structures; formal languages; program testing; program verification; Alloy Analyzer; Java data structures; TestEra; abstraction; automated Java program testing; concrete Java inputs; concretization translations; correctness criteria; enabling technology; first-order relational language; input size; naming architecture; non-isomorphic test cases; red-black trees; singly linked lists; violated correctness criteria; Automatic testing; Computational modeling; Computer science; Concrete; Data structures; Java; Laboratories; Marine technology; Prototypes; Software testing;
Conference_Titel :
Automated Software Engineering, 2001. (ASE 2001). Proceedings. 16th Annual International Conference on
Print_ISBN :
0-7695-1426-X
DOI :
10.1109/ASE.2001.989787