Emma (Eigenschreibweise: EMMA) ist ein quelloffenes Werkzeug zur Messung der Testabdeckung in Java-Programmen. Dabei wird während der Ausführung einer Applikation gemessen, durch welche Klassen, Methoden, Blöcke und Zeilen Code die Abarbeitung lief.

Emma

Basisdaten

Entwickler Vlad Roubtsov
Aktuelle Version 2.0.5312
(13. Juni 2005)
Aktuelle Vorabversion 2.1.5320
(22. Juni 2005)
Betriebssystem plattformunabhängig
Programmier­sprache Java
Kategorie Code Coverage Tool
Lizenz Common Public License 1.0
emma.sourceforge.net

Emma hieß ursprünglich „YACT“ (Yet Another Coverage Tool), nachdem dieser Name aber bereits bei Sourceforge vergeben war, benannte Vlad Roubtsov das Tool in „Emma“, nach dem Namen seiner Frau, um.

Emma wird wie die meisten Werkzeuge zur Messung der Testabdeckung vor allem für die Messung der Abdeckung durch Modultests herangezogen. Das Ergebnis lässt auf die Güte dieser Modultests schließen und somit auf die technische Qualität der Software. Dabei laufen die Tests laut eigenen Angaben um nur 5–20 % langsamer als ohne die Verwendung von Emma.[1]

Im Gegensatz zu vergleichbaren Werkzeugen erlaubt Emma auch die Messung der Testabdeckung ohne vorhergehende Instrumentierung des Codes. Dies wird durch einen speziellen Classloader umgesetzt.[1] Damit ermöglicht Emma die Messung von bereits in Produktion befindlicher Software, um beispielsweise toten Code oder nicht benötigte Programmteile zu erkennen.

Verschiedene Plugins für Entwicklungsumgebungen und Qualitätsicherungswerkzeuge wie beispielsweise das NetBeans-Modultest-Code-Coverage-Plugin oder SONAR basieren auf Emma.[2][3] Allein von der SourceForge-Seite wurde Emma mehr als 130.000 Mal heruntergeladen.[4] Es existieren Emma-Plugins für Apache Ant, Apache Maven und Eclipse, welche den Download und die Verwendung von Emma im Zuge des Buildprozesses vereinfachen.[5]

Siehe auch

Bearbeiten
Bearbeiten

Einzelnachweise

Bearbeiten
  1. a b EMMA: a free Java code coverage tool. In: sourceforge.net. Abgerufen am 16. Dezember 2024 (englisch).
  2. pronetbeans.com: Reviewing the NetBeans Unit Tests Code Coverage Plugin (Memento vom 31. August 2009 im Internet Archive) (englisch)
  3. codehaus.org: Sonar Emma Plugin (Memento vom 1. Oktober 2009 im Internet Archive) (englisch)
  4. Emma Sourceforge Download History
  5. Emma. In: mavenrepository.com. Ehemals im Original (nicht mehr online verfügbar); abgerufen im April 2018.@1@2Vorlage:Toter Link/www.mavenrepository.com (Seite nicht mehr abrufbar. Suche in Webarchiven)