9. September 2008

CodeCoverage Tool Emma mit Tomcat

Emma ist ein kostenloses Java-Tool um CodeCoverage, z.B. von Unit-Tests zu visualisieren.

Schritt 1
: Kompilierte Klassen mit Emma erweitern
<taskdef resource="emma_ant.properties" classpathref="pathtoemmaJars" />

  • instrpathref: Pfad zu den kompilierten klassen, die von Emma instrumentalisiert werden sollen
  • destdir: Verzeichnis, in das die von Emma instrumentalisierten Klassen geschribene werden
<target name="emmaInst" description="Instrument compiled classed with emma coverage collection infos">
<emma enabled="true">
<instr instrpathref="run.classpath" destdir="deploy/inst-classes" metadatafile="deploy/metadata.emma" merge="true" />
</emma>
</target>

Schritt 2: Tomcat starten.

emma.jar muss im Classpath sein

Folgende VMArgs für Emma müssen definiert werden für den Start:

-Demma.coverage.out.file=deploy\coverage.emma
-Demma.coverage.out.merge=true

Schritt 2.1: Test durchführen

Schritt 3: Tomcat stoppen, generiert Coverage-File

Schritt 4: Report generieren
 <target name="emmaReport" >

<emma enabled="true">
<report sourcepathref="sourcepath">
<fileset dir="deploy">
<include name="*.emma" />
</fileset>

<txt outfile="deploy/coverage.txt" />
<html outfile="deploy/coverage.html" />
</report>
</emma>

</target>

Keine Kommentare: