JUnit 5 - Testing In The Modular World (Christian Stein)

Details

Das mit Java 9 eingeführte Java Platform Module System (JPMS) stellt neue Herausforderungen an die Organisation und Durchführung automatisierter Softwaretests. Das Auffinden von Tests und deren Ausführung über die Reflection-API ist weiterhin möglich, erfordert aber eine zusätzliche Konfiguration.

JUnit 5 unterstützt das Scannen nach Tests in Modulen seit 5.1 und verfügt über ein Beispielprojekt, das drei mögliche Ansätze zeigt.

Der Vortrag beginnt mit einer grundlegenden Einführung in JUnit 5 und das Java-Modulsystem, bevor die drei Ansätze zur Durchführung von Tests bei Verwendung des JPMS von der Kommandozeile aus vorgestellt werden:

Rückgriff auf den Klassenpfad
Patchen von Test-Binärdateien in Hauptmodule zur Laufzeit
Patchen von Hauptquellen in Testmodule zur Kompilierungszeit
Es schließt mit einem Ausblick:

Gibt es Abweichungen oder andere Ansätze?
Wie unterstützen Sie Build-Tools?
Was sind Best Practices in IDEs?
Viel Spaß beim modularen Testen!

Über den Speaker:
Christian ist ein Open-Source-Softwareentwickler, der seit 1998 mit Java programmiert. Er hat eine Leidenschaft für automatisiertes Testen und kam 2017 zum Kernteam von JUnit, ist aktiver Apache Maven-Entwickler und erhielt 2019 den OpenJDK-Autorenstatus. Er lebt in Bonn und arbeitet für die MICROMATA GmbH.