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>