The Community for Technology Leaders
2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011) (2011)
Lawrence, KS, USA
Nov. 6, 2011 to Nov. 10, 2011
ISBN: 978-1-4577-1638-6
pp: 608-611
Shadi Abdul Khalek , Electrical and Computer Engineering, University of Texas at Austin, USA
Guowei Yang , Electrical and Computer Engineering, University of Texas at Austin, USA
Lingming Zhang , Electrical and Computer Engineering, University of Texas at Austin, USA
Darko Marinov , Department of Computer Science, University of Illinois at Urbana-Champaign, USA
Sarfraz Khurshid , Electrical and Computer Engineering, University of Texas at Austin, USA
ABSTRACT
This tool paper presents an embodiment of TestEra - a framework developed in previous work for specification-based testing of Java programs. To test a Java method, TestEra uses the method's pre-condition specification to generate test inputs and the post-condition to check correctness of outputs. TestEra supports specifications written in Alloy - a first-order, declarative language based on relations - and uses the SAT-based back-end of the Alloy tool-set for systematic generation of test suites. Each test case is a JUnit test method, which performs three key steps: (1) initialization of pre-state, i.e., creation of inputs to the method under test; (2) invocation of the method; and (3) checking the correctness of post-state, i.e., checking the method output. The tool supports visualization of inputs and outputs as object graphs for graphical illustration of method behavior. TestEra is available for download to be used as a library or as an Eclipse plug-in.
INDEX TERMS
CITATION

D. Marinov, S. A. Khalek, Guowei Yang, Lingming Zhang and S. Khurshid, "TestEra: A tool for testing Java programs using alloy specifications," 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011)(ASE), Lawrence, KS, USA, 2011, pp. 608-611.
doi:10.1109/ASE.2011.6100137
100 ms
(Ver 3.3 (11022016))