JUnit 5 Reloaded: Mehr Spaß und weniger Bauchschmerzen beim Entwickeln durch clevere Tests

Softwareentwicklung mit Open Source
09.09.2021


9:00 – 17:15 Uhr
ETH Zürich
Max. Teilnehmer: 20

Einleitung

Frischen Sie Ihre Test-Kenntnisse auf und lernen Sie, wie Testen mit den richtigen Tools wieder Spaß macht. Dieser Workshop bietet Ihnen dazu einen fundierten Einstieg in das professionelle Testen mit der aktuellsten JUnit-Version 5.

Programm

JUnit ist das wohl populärste Unit-Testing-Framework für Java und bringt in Version 5 das Unit Testing auf ein neues Level.

Dieser Workshop gibt einen fundierten Einstieg in das Thema Testing und Softwarequalität und zeigt, wie wir von Anfang an Probleme vermeiden und eine hohe Qualität erreichen.

Wir lernen, wie wir mit Hilfe von JUnit 5 passende und wartbare Tests erstellen, etwa indem wir Äquivalenzklassen und Grenzwerte prüfen. Dazu werden grundlegende Assertions vorgestellt. Ergänzend sind das Testen mit Timeouts sowie von Exceptions von Interesse. Insbesondere werden die vielfältigen Möglichkeiten von parametrisierten Tests und ihre Nützlichkeit in der Praxis thematisiert.

Mit richtig gewählten Tests und der Kenntnis auch fortgeschrittener Techniken und Tools, wie Mocks und Stubs mit Mockito und Extract and Override, behalten wir auch Abhängigkeiten gut im Griff. Die Messung der Testabdeckung zur Aufdeckung noch eher ungetesteter Teile liefert uns weitere wertvolle Informationen, wo wir unsere Tests noch sinnvoll ergänzen können.

Anschließend wird die Migration von JUnit 4 auf die neueste Version 5 besprochen, im Speziellen die gemeinsame Ausführung von JUnit-4- und JUnit-5-Tests zur schrittweisen, sanften Migration. Abgerundet wird der Workshop durch die Vorstellung von Test Smells, also Dingen, die wir beim Testen vermeiden sollten.

Gliederung des Workshops

  • Einführung Testing
  • JUnit 5 Intro
    • Architektur
    • Tests mit mehreren Asserts, Exceptions und Timeouts
  • Junit 5 Advanced
    • Parametrized Test
    • Simple Extensions
    • Tipps zur Migration / AssertJ
  • Testweisen und Abhängigkeiten
    • Design For Testability
    • Sollbruchstellen
    • Extract and Override
    • Mockito
    • Test Smells
    • Test Coverage
  • Optional: Mutation Testing / PowerMock

Kursziel

Frischen Sie Ihre Test-Kenntnisse auf und lernen Sie, wie Testen mit den richtigen Tools wieder Spaß macht. Dieser Workshop bietet Ihnen dazu einen fundierten Einstieg in das professionelle Testen mit der aktuellsten JUnit-Version 5.

Adressaten

Der Workshop richtet sich an Softwareentwickler und -Architekten und Test-Ingenieure, die sich gezielt über die neuen Möglichkeiten des Testens mit JUnit 5 informieren wollen.

Voraussetzungen

  • Aktuelle IDE (Eclipse 2021-03 oder neuer, IntelliJ 2021.x oder neuer)
  • Aktuelles Java 11 oder neuer
  • Notebook mit der Möglichkeit, Sourcen und Beispiele aus dem Netz von GitHub herunterzuladen

Infrastruktur

  • Aktuelle IDE (Eclipse 2021-03 oder neuer, IntelliJ 2021.x oder neuer)
  • Aktuelles Java 11 oder neuer
  • Notebook mit der Möglichkeit, Sourcen und Beispiele aus dem Netz von GitHub herunterzuladen

Referenten

Michael Inden



Michael Inden ist Oracle-zertifizierter Java-Entwickler mit über 20 Jahren Berufserfahrung bei verschiedenen internationalen Firmen. Dort hat er in diversen Rollen etwa als SW-Entwickler, SW-Architekt, Consultant, Teamleiter, CTO, Leiter Academy und Trainer gearbeitet. Zurzeit ist er freiberuflich tätig. Sein besonderes Interesse gilt dem Design qualitativ hochwertiger Applikationen mit ergonomischen GUIs sowie dem Coaching. Er hat diverse Schulungen und Vorträge geleitet, sowohl intern als auch extern, etwa bei Firmen, bei der Java User Group Switzerland sowie bei Konferenzen wie der JAX/W-JAX, JAX London, ch.open und Oracle Code One. Außerdem ist er als Fachbuchautor tätig. Seine Bücher u.a. „Der Weg zum Java-Profi“, Java…