Test-Framework JUnit 5 am Start

Rund 10 Jahre nach JUnit 4 gibt es für das bedeutendste Framework zum Testen von Java-Software nun endlich das neue Release 5 mit fundamentalen konzeptuellen Änderungen. Unterstützung erhält das international viel beachtete Open-Source-Projekt auch aus der Region – Heidelberg Mobil International GmbH beteiligte sich bereits als einer der Hauptsponsoren der Crowdfunding-Kampagne für das Vorgängerprojekt JUnit Lambda. Jetzt ist aus JUnit Lambda die offizielle neue Version JUnit 5 hervorgegangen. Auch hierfür stellt Heidelberg Mobil weiterhin einen der Core Committer.

An JUnit kommt kein Java-Entwickler vorbei. Das Test-Framework, Ende des vergangenen Jahrtausends der Legende nach über den Wolken ins Leben gerufen von Erich Gamma und Kent Beck, erfreut sich in Fachkreisen immenser Beliebtheit und hat auch 2016 den Thron der mit Abstand wichtigsten Bibliothek für Java-Programmierer verteidigt.

„Durch JUnit wurde in den Neunzigern das automatisierte Testen von kleinen, isolierten Funktionen deutlich erleichtert und bei Entwicklern populär. Die testgetriebene Programmierung stellt auch einen Meilenstein in der Evolution agiler Softwareentwicklungsmethoden dar – wir treten also ein großes Erbe an“, erklärt Matthias Merdes, Lead Developer Architecture & Services bei Heidelberg Mobil GmbH und aktives Mitglied des JUnit 5-Teams.

JUnit 5 liefert Weiterentwicklung des Test-Frameworks

Dieses Erbe bedurfte der Weiterentwicklung, denn trotz beeindruckender Downloadzahlen und ungebrochener Beliebtheit in der Community war seit dem Release von JUnit 4 im Jahre 2006 keine wesentliche Modernisierung zu verzeichnen, nicht zuletzt durch die Abhängigkeit zu Java 5. Auf Initiative von Johannes Link und Marc Philipp wurde daher im August 2015 die Crowdfunding-Kampagne „JUnit Lambda“ gestartet und die Szene war sofort an Bord: Nach gut 2 Monaten war dank der Unterstützung durch 428 Privatpersonen und 36 Unternehmen mit € 54.000 mehr als das Doppelte des ursprünglich anvisierten Minimalbudgets erreicht – ein klares Signal für die Bedeutung, die Entwicklerkreise dem Framework beimessen.

Neben den Branchengrößen JetBrains mit seiner Entwicklungsumgebung Intellij IDEA, dem Build-Tool-Hersteller Gradle und Pivotal, dem Unternehmen hinter dem Spring-Framework sowie einem Großanwender aus dem Finanzsektor gehörte Merdes‘ Arbeitgeber Heidelberg Mobil zu den Hauptsponsoren und förderte JUnit Lambda nicht nur finanziell, sondern auch durch die Freistellung seines Lead Developers für volle sechs Arbeitswochen.

Grundlegende Modernisierung, saubere Erweiterungsarchitektur, Integration in Entwicklungswerkzeuge

Der Einsatz hat sich gelohnt. JUnit 4 basierte noch auf Java 5. Für JUnit 5 wurde bewusst Java 8 mit seinen technologischen Neuerungen als Basis gewählt. Während die neue, stark modulare Architektur, die mit besonderem Fokus auf Erweiterbarkeit und Integrierbarkeit in Tools entworfen wurde, vor allem für Hersteller von Entwicklungswerkzeugen wichtig ist, gibt es auch für Entwickler massive Erweiterungen. Dies betrifft vor allem dynamische Tests und bessere Kombinierbarkeit von Erweiterungen sowie die Unterstützung neuer Sprachfeatures aus Java 8 wie Lambdas.

Wie hoch das neue JUnit 5 im Java-Ökosystem gehandelt wird, zeigt sich auch in der raschen Integration in andere Systeme bereits in der Milestone-Phase. Die bei Profientwicklern sehr beliebte integrierte Entwicklungsumgebung Intellij IDEA beispielsweise veröffentlicht parallel zu JUnit 5 mehrere Milestone Releases mit stetig wachsender JUnit 5-Unterstützung. Auch mit Java 9, aktuell noch in der Entwicklung durch Oracle, finden bereits kontinuierliche Integrationstests statt.

Das finale Release 5.0 von JUnit wird Anfang 2017 erwartet – man darf gespannt sein.

Weitere Informationen:


Mehr über JUnit 5 erfahren Sie auf der offiziellen Projektseite.

Weiterführende Informationen zum Projekt JUnit Lambda hält unser jaxenter-Beitrag "Logbuch JUnit Lambda: Zwischen Kickoff und Alpha kommt der Prototyp“ vom 27.11.2015 für Sie bereit.

Lesen Sie hierzu auch die Pressemitteilung vom 08.10.2015: JUnit Lambda – ein Projekt zur Verbesserung des JUnit Frameworks.

Verwandte Artikel