You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by Ramandeep Kaur <ra...@yngvi.org> on 2005/03/23 21:19:07 UTC

Derby Code Coverage Using EMMA

Hi,

I evaluated several open source code coverage tools as candidates for 
Derby code coverage. These included EMMA, Clover, and Jcoverage/GPL.

The main reason of choosing EMMA was its feature to instrument class 
files instead of source files. Instrumentation is basically 
adding/inserting reporting code into an application code or executables. 
Instrumentation can be done at 2 levels - source code level or class 
files level. Clover supports instrumentation at source files level for 
which Derby build.xml files will need to be modified to add clover tasks 
to instrument the source code and then compile the instrumented source code.

As EMMA supported instrumentation at class files level, there is no need 
to modify Derby build xml files. Developers can simply download Derby 
jar files or build Derby jar files and instrument them with one simple 
command before running Derby test suites/test cases. As EMMA instrument 
command takes jar files as input, there is no need to unjar the jar 
files and then give class files as input.

In case of Jcoverage/gpl, it took only classes as input. Also, 
Jcoverage/gpl is not supported, does not include bug fixes, has limited 
scalability and documentation.

I have written a document to provide information to the Derby community 
regarding the use of EMMA as a code coverage tool.  I am attaching the 
document to this message.


Thanks,
Raman
(ramank@yngvi.org)

Re: Derby Code Coverage Using EMMA

Posted by "Jean T. Anderson" <jt...@bristowhill.com>.
Ramandeep Kaur wrote:
> <snip/>
> I have written a document to provide information to the Derby community 
> regarding the use of EMMA as a code coverage tool.  I am attaching the 
> document to this message.

Thanks for the contribution, Raman. It's added to the web site and 
should become visible the next time www.apache.org syncs with 
cvs.apache.org.

  -jean