Daistish: Systematic Testing for OOPLs using ADT Axioms
Source code distribution
Daistish comprises a perl script and a user manual.
We are making it available free of charge for non-commercial use.
To arrange for commercial use, please contact
David Stotts.
- Eiffel Daistish
Our first version of Daistish was developed in the fall of 1994
and tested in a software development class using Eiffel.
We are not distributing this version though. It was developed
for an old version of the language syntax so it is now obsolete.
Details can be found in our
ISSTA '96 paper.
- C++ Daistish
Our second implementation, C++ Daistish (v.1.0), is being distributed.
It handles most of the C++ language, but will not deal with fully
general use of pointers. However, it will handle a large enough
subset of C++ that complex classes with efficient inmplemntations
can be written and tested. See the user manual for details.
How the system works
Daistish allows software developers to specify their
classes as abstract data types, using the algebraic notation
developed by Guttag. It implements further refinements of
the testing methods in Gannon's DAISTS system.
When implementation of a class hierarchy is complete, the user
must specify some objects (data points) of the types being tested.
Daistish will generate appropriate tests to exercise the methods
of the class on the given data objects. Correctness of execution
is determined using the axioms (specs).
The general concepts behind Daistish can be found in our
ISSTA '96 paper.
for more information:
David Stotts,
CS Dept., Univ. of North Carolina at Chapel Hill