JST: An automatic test generation tool for industrial Java applications with strings
Authors:
- 1 May 2013
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- p. 992-1001
Abstract
In this paper we present JST, a tool that automatically generates a high coverage test suite for industrial strength Java applications. This tool uses a numeric-string hybrid symbolic execution engine at its core which is based on the Symbolic Java PathFinder platform. However, in order to make the tool applicable to industrial applications the existing generic platform had to be enhanced in numerous ways that we describe in this paper. The JST tool consists of newly supported essential Java library components and widely used data structures; novel solving techniques for string constraints, regular expressions, and their interactions with integer and floating point numbers; and key optimizations that make the tool more efficient. We present a methodology to seamlessly integrate the features mentioned above to make the tool scalable to industrial applications that are beyond the reach of the original platform in terms of both applicability and performance. We also present extensive experimental data to illustrate the effectiveness of our tool.Keywords
This publication has 16 references indexed in Scilit:
- Symbolic execution of programs with strings2012
- GKLEE2012
- HAMPI: A String Solver for Testing, Analysis and Vulnerability DetectionLecture Notes in Computer Science, 2011
- Solving string constraints lazily2010
- Rex: Symbolic Regular Expression Explorer2010
- A Symbolic Execution Framework for JavaScript2010
- Efficient symbolic execution of strings for validating web applications2009
- CUTE2005
- Problems, Connections and Expectations of Asteroseismology: a Summary of the WorkshopAstrophysics and Space Science, 2003
- Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints1977