aPET is a glass-box test-case generator for ABS programs, a
concurrent, object-oriented, modeling language that features
functional data-types (for more information on the ABS language
go here).
aPET is based on symbolic execution on CLP (Constraint Logic Programming)
and it therefore consists in two main phases: 1) The ABS program is
translated into a semantically equivalent CLP program, and 2) the CLP
program is symbolically executed in CLP controlled by a termination
and coverage criterion.
aPET Eclipse plugin (recommended)
The aPET Eclipse plugin is completely integrated within the main
ABS Tool suite, an Eclipse
plugin which includes facilities for creating, managing and running
ABS projects, features like debugging, visualization, analysis and
testing, etc.
Installation instructions:
Open Eclipse, go to Help -> Install new Software and
use the following update site
The installation is automatic and after reinstalling Eclipse aPET is ready to be used.
Note: The version in the ABS Tool Suite web site is not updated very
often. That is the reason why we provide here a more recent version including the
most recent changes in the aPET plugin.
Note: It can be required to install the latest Eclipse Classic (version 3.7.2).
Usage instructions:
At this point it is assumed that the Eclipse plugin is installed and Eclipse has been restarted. To check this, observe that there must be a new menu option in Eclipse named aPET and a little dog icon in the menu bar.
Create a new ABS project and place there the source ABS files. Some examples of ABS programs can be found here.
Open an ABS file and Select the methods/functions for which to generate test-cases from the outline view (the panel on the right hand-side). In case of selecting methods make sure they are those from the class and not those of the interface. To select more than method hold the caps or control key.
Press the aPET button (the one with the little dog) or alternatively go to the aPET menu. A window with the preferences of aPET is shown. Set them and press "Ok".
The output is displayed in the Eclipse console window. It includes information about the different phases performed by aPET as well as the generated test-cases in textual form. The test-cases are also written to an XML file ("/tmp/pet/abs_testcases.xml"). Additionally aPET generates automatically ABSUnit test-cases. They are currently generated in file abs-testcases.abs within the current ABS project.
Note: In order to make use of all the cababilities of the ABS Tool suite the ABS perpective must be activated.
aPET Command-line
apet.zip:
a zip file that includes a pre-compiled version for 32bit
Linux. Uncompress and read the README file for installation
instructions. The tool documentation can be found in the doc folder.