DocumentCode
2074620
Title
Test generation through programming in UDITA
Author
Gligoric, Milos ; Gvero, Tihomir ; Jagannath, Vilas ; Khurshid, Sarfraz ; Kuncak, Viktor ; Marinov, Darko
Author_Institution
Univ. of Illinois, Urbana, IL, USA
Volume
1
fYear
2010
fDate
2-8 May 2010
Firstpage
225
Lastpage
234
Abstract
We present an approach for describing tests using non-deterministic test generation programs. To write such programs, we introduce UDITA, a Java-based language with non-deterministic choice operators and an interface for generating linked structures. We also describe new algorithms that generate concrete tests by efficiently exploring the space of all executions of non-deterministic UDITA programs. We implemented our approach and incorporated it into the official, publicly available repository of Java PathFinder (JPF), a popular tool for verifying Java programs. We evaluate our technique by generating tests for data structures, refactoring engines, and JPF itself. Our experiments show that test generation using UDITA is faster and leads to test descriptions that are easier to write than in previous frameworks. Moreover, the novel execution mechanism of UDITA is essential for making test generation feasible. Using UDITA, we have discovered a number of bugs in Eclipse, NetBeans, Sun javac, and JPF.
Keywords
Java; data structures; program testing; JPF; Java PathFinder; Java based language; Java programs; UDITA programming; UDITA programs; data structures; test generation; Computer bugs; Concrete; Data structures; Engines; Generators; Java; Testing; Java PathFinder; Pex; UDITA; automated testing; test filtering; test generation; test predicates; test programs;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering, 2010 ACM/IEEE 32nd International Conference on
Conference_Location
Cape Town
ISSN
0270-5257
Print_ISBN
978-1-60558-719-6
Type
conf
DOI
10.1145/1806799.1806835
Filename
6062090
Link To Document