Misc,

AJAX: Automating an Informal Formal Method for Systematic JUnit Test Suite Generation

.
(2002)

Abstract

The JUnit testing tool is widely used to support the central XP concept of "test first" software development. We previously introduced an informal use of formal ADT semantics for guiding JUnit test method generation 16. Called JAX (for Junit AXioms), the method does not require the programmer to learn and use any formal notation in order to gain some benefits from a formal method; no notations are involved other than Java. Experiments showed that manual application of the JAX method produces JUnit test suites that expose more coding errors than ad hoc JUnit test case development. The previous research emphasized a manual programming procedure as a way to work the formal benefits into practice more easily. In this paper we discuss AJAX (Automated JAX), extensions we have made to the JUnit Java classes to automate the application of JAX to various degrees. The tradeoff is that for the highest degree of automation, the programmer will need to learn and develop formalisms (ADT axioms); to ease this potential burden we use a programming notation (ML) for the formalism. Our JUnit extensions will be available for download.

Tags

Users

  • @lama

Comments and Reviews