Kiasan/KUnit: Automatic Test Case Generation and Analysis Feedback for Open Object-oriented Systems

Xianghua Deng, Robby, John Hatcliff · 2007

We demonstrate how a static analysis feedback and unit test case generation framework, KUnit, built on the Bogor/ Kiasan symbolic execution engine provides an effective unit test case generation for sequential heap-intensive Java programs (whose computation structures are incomplete - open systems). KUnit leverages method contract information to better deal with open object-oriented systems and to support automatic mock object creation. To facilitate application to realistic software, KUnit allows the scope/cost of the analysis and test case generation to be controlled via notions of heap configuration coverage. In a broad experimental study on 23 Java data structure modules, we show that it is able to: (a) achieve 100% feasible branch coverage on almost all methods by using only small heap configurations, (b) improve on competing tools for coverage achieved, size of test suites, and time to generate test suites.

Read the paper · More papers on PaperTik