You might consider using a test coverage tool that isn't tied to the infrastructure in the way Emma is. This avoids the problems with incompatabilities with said infrastructure. Our Java Test Coverage tool instruments your source code, making it independent of the compiler and runtime system. You compile your code and execute/test it however your like (system tests, unit tests, manual interaction), and it collects test coverage data in a Java array in a TestCoverage class, as the tests run. At the end of execution (you define that, although exit from main is a common definition), that test coverage data is written somehow to a file, eventually to be displayed by the test coverage tool. While the Java Test Coverage tool provides a default class implementation that writes the array to a disk file using Java file primitives, you can easily override the implementation with any code you like, and store the array in any place where it can be eventually retrieved by another mechanism to be turned into a file, and then displayed. This will work with your manual exercising of code.