Pacemaker Project

University of Oregon



An Open-Source Residual Test Coverage Tool

Release Candidate Version 1.0rc2 available for download

Gretel is a test coverage monitoring tool for Java programs. The current version provides statement coverage monitoring (identifying which lines of Java have been executed, and which have not been touched by testing).

The primary difference between Gretel and other coverage monitoring tools is that Gretel implements residual test coverage monitoring: After you run a program that has been instrumented with Gretel, Gretel can re-instrument the program and remove instrumentation for those parts that have already been executed. Since most programs spend most of their time in a few small regions, which are easily covered in the first few test runs, residual re-instrumentation with Gretel greatly reduces the performance penalty of test coverage monitoring.

Gretel was designed and written by Carl Howells. It is a complete reimplementation and partial redesign of the system described in Pavlopoulou and Young, "Residual Test Coverage Monitoring,", which appeared in the Proceedings of the International Conference on Software Engineering, 1999, Los Angeles. [More] on residual testing.

Gretel offered under a BSD-style open-source license.

You may also be interested in Hansel, a JUnit-compatible residual testing tool contributed to the open source community by Niklas Mehner. Gretel itself is not (yet) compatible with JUnit.


To use Gretel, you must have:

Note that this version of Gretel can only instrument Java applications, not applets.

Read Gretel Documentation [here]

Download version 1.0rc2 (June 2002)

As a Gzipped tar file (Gretel-10rc2.tgz)
As a Zip archive (

Version 1.0rc2 contains some bug fixes and a new condensed source file view. Expect to see Gretel move to SourceForge in the near future.

Download earlier release: Gretel version 1.0rc1 (October 2001)

As a Gzipped tar file (Gretel-10rc1.tgz, 596k)
As a Zip archive (, 619k)
Note: Version 1.0rc1.1 of 12 October 2001 differs from version 1.0rc1 only in documentation. The source code of Gretel is packaged within a .jar archive, together with the .class files.

Please tell us ...

If you use Gretel, or try to, please send mail to Michal Young ( and/or Carl Howells ( and tell us what you think of it. We'll also do our best to answer questions.

Up to [Project] [Department] Contact: Updated 24-jun-02
Effort sponsored by the Defense Advanced Research Projects Agency (DARPA) and Air Force Research Laboratory, Air Force Materiel Command, USAF, under agreement number F30602-00-2-0620. [more]