Suche
Interview mit Johannes Link

JUnit Lambda gestartet: Crowdfunding-Kampagne für ein JUnit 5.0

Hartmut Schlosser

www.junit.org/junit-lambda.html

Mit der Crowdfunding-Kampagne JUnit Lambda soll die Entwicklung des populären Unittest-Tools JUnit vorangebracht werden. Johannes Link verrät im JAXenter-Interview, wo aktuell die Probleme bei JUnit liegen und wie diese in einem möglichen JUnit 5.0 behoben werden könnten.

JAXenter: Ihr habt gerade eine Crowdfunding-­Kampagne zur Erweiterung von JUnit gestartet. Welches Problem mit JUnit soll dabei gelöst werden?

Johannes Link: Version 4.0 von JUnit 4 wurde vor 10 Jahren releast. Seitdem haben sich nicht nur Java und die JVM weiterentwickelt, sondern es sind auch zahlreiche neue Ideen entstanden, wie man automatisierte Tests gestalten möchte. Andere Testframeworks decken diesen Raum gut ab, doch am Ende bauen die meisten auf der JUnit-­Integration von IDEs und Build-­Tools auf. IDEs und Build-­Tools benutzen jedoch nicht nur die offiziellen Schnittstellen, sondern verlassen sich auf Implementierungsdetails spezifischer JUnit-­Unterversionen. Das heißt, dass der Erfolg von JUnit als Plattform die Weiterentwicklung von JUnit als Testwerkzeug verhindert. Dieses Grundproblem wollen wir durch die Abtrennung einer ausreichend mächtigen und stabilen API zum Ausführen der Testfälle lösen.

 JAXenter: Kannst du einige Beispiele nennen, in denen JUnit unbedingt aktualisiert werden müsste?

Johannes Link: Zusätzlich zur schon genannten Execution-­API ist die Erweiterbarkeit ein echter Schmerzpunkt. Mit Test-­Runner und Test-­Rule gibt es zwei konkurrierende Konzepte, die zudem unterschiedliche Erweiterungaspekte miteinander vermengen. Aus diesem Mischmasch wollen wir einige wenige, voneinander klar abgegrenzte Konstrukte ableiten. Und schließlich möchten wir JUnit-­Nutzern die Möglichkeit geben, manche Testfälle über Java-­8-­Features wie Lambdas und Streams präziser formulieren zu können.

JAXenter: Wie ist die Kampagne aufgezogen – wer steht dahinter, was ist Euer Ziel?

Johannes Link: Hinter der Kampagne stehen zum einen die bisherigen JUnit-­Core-­Committer: Marc Philipp wird bei JUnit-­Lambda als Vollzeitentwickler mitmachen, David Saff und Kevin Cooney stehen beratend zur Seite. Daneben werden Stefan Bechtold, Matthias Merdes und ich zusätzlich einsteigen. Falls die Kampagne erfolgreich ist, planen wir, ab Oktober diesen Jahres etwa 2 Monate intensiv an der neuen Codebasis zu arbeiten -­ natürlich in einem öffentlichen Repository, damit die Community frühes Feedback geben kann.

JAXenter: Wie sieht es derzeit aus? Gibt es bereits Unternehmen/Committer für ein JUnit Lambda?

Johannes Link: Bislang sind die Arbeitgeber von Marc, Stefan und Matthias die Hauptsponsoren, da sie eine 6-­Wochen-­Freistellung zugesagt haben. Für die übrige Zeit sowie für zusätzliche Entwickler benötigen wir jedoch noch größere finanzielle Unterstützung. Das Kampagnenziel von 25 TEUR ist lediglich das Minimum, bei dem wir einen Startschuss überhaupt für sinnvoll halten. Für ein stärkeres Engagement durch ein Unternehmen sind wir daher offen -­ dafür haben wir explizit die Belohnung (engl. Perk) “Main Sponsor” geschaffen.

JAXenter: Was ist eure Vision für ein mögliches JUnit 5?

Johannes Link: Unsere gegenwärtige Vision sieht drei Kernmodule vor: Core, Execution-­API, Java-­8-­Erweiterung. Zur Wahrung der Abwärtskompatibilität und einer sanften Migration von Version 4 auf 5 werden vermutlich noch das eine oder andere Modul hinzukommen.

JAXenter: Wenn die Kampagne erfolgreich ist: Was ist Eure Vorstellung der nächsten Releases?

Johannes Link: Previews und Spikes wird es sicherlich sehr bald geben -­ innerhalb weniger Wochen nach Start der Entwicklung. Mit echten Releases rechnen wir erst im Frühjahr 2016 -­ aber wer weiß schon wirklich, wohin das Feedback durch echten Code und durch die Community führen wird.

JAXenter: Und zum Abschluss ein kleiner Werbejingle für die Sache: Weshalb sollten sich Unternehmen an der Kampagne beteiligen?

Johannes Link: Neben dem Werbeeffekt für zukünftige Mitarbeiter erlauben die wertvolleren Perks auch die Teilnahme am Kickoff-­Meeting, bei dem wir über die grobe Richtung der Entwicklung entscheiden werden. Am Ende stellt sich die Frage: Kann JUnit auch in Zukunft die Plattform für automatisiertes Testen auf der JVM bleiben oder wird eine Zersplitterung zu spürbaren Mehraufwänden bei Build Management und Continuous Integration führen? Ein erfolgreiches JUnit Lambda hat daher durchaus auch positive ökonomische Folgen für Software-­Firmen.

JAXenter: Dann wünschen wir viel Erfolg!

Johannes Link arbeitet als Softwareentwickler und Softwaretherapeut. Mit JUnit und vielen anderen Arten des automatisierten Testens beschäftigt er sich seit über 15 Jahren. Mehr über Johannes, seine Projekte und seine softwaretechnischen Leidenschaften erfährt man auf http://johanneslink.net.

Verwandte Themen:

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Content-Stratege, IT-Redakteur, Storyteller – als Online-Teamlead bei S&S Media ist Hartmut Schlosser immer auf der Suche nach der Geschichte hinter der News. SEO und KPIs isst er zum Frühstück. Satt machen ihn kreative Aktionen, die den Leser bewegen. @hschlosser
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: