GEDOPLAN

Java Testing mit JUnit 5 und Mockito

Automatisiertes Testen in Java mit JUnit und Mockito

  • Einführung in die Testautomatisierung in Java.
  • Grundlagen und fortgeschrittenes Testen mit JUnit mit Unterstützung von Mocking.
  • Umfangreiche und vielfältige Übungsaufgaben vertiefen die Inhalte praktisch.

Beschreibung

Das Testen ist ein wichtiger Bestandteil der Software-Entwicklung, wird aber leider oft vernachlässigt. Zur professionellen Software-Entwicklung gehören daher unbedingt die formalisierten und automatisierten Tests.

Diese Schulung vermittelt zunächst einen Überblick über die Schwächen manueller Testverfahren, um dann die Vorteile automatisierter Ansätze für den Test von Java-Anwendungen auszuarbeiten. Die Teilnehmer erlernen die Grundlagen für das zielführende, automatisierte Testen von Java-Anwendungen. Die Maßnahmen zur Einführung von Testautomatisierung werden erläutert und die verschiedenen Arten von automatisierten Tests werden charakterisiert.

Das Framework JUnit hat sich als de-facto-Standard für automatisierte Software-Tests im Java-Umfeld etabliert. Wir betrachten in der Schulung die aktuelle Version 5 des JUnit-Framework und können diese bei Bedarf von der vorherigen Version 4 abgrenzen. Als eine Vorgehensweise, um den Prozess von Implementierung und nachgelagerten, aufwendigen Tests aufzubrechen sowie um eine hohe Testüberdeckung in Java-Projekten zu gewährleisten, wird das Test-Driven Development (TDD) vorgestellt.

Die Messung der Testüberdeckung zum Auffinden bislang ungetesteter Software-Bereiche liefert wertvolle Informationen, wo die automatisierten Tests noch sinnvoll zu ergänzen sind.

In einem JUnit-Test genutzte Objekte, die nicht aufgerufen werden können oder sollen, müssen durch Stellvertreter-Objekte mit definiertem Verhalten simuliert werden. Für die dynamische Generierung solcher Mock-Objekte werden Mocking-Frameworks wie insbesondere Mockito verwendet. Die Nutzung von Mockito für spezielle Mocking-Aufgaben wie beispielsweise das Mocking von Konstruktoren oder statischen Methoden wird ebenfalls behandelt.

Agenda

Einführung in die Testautomatisierung

  • Grundbegriffe des Software-Tests
  • Automatisierte vs. manuelle Tests
  • Arten von automatisierten Tests (Unit-Test, Integrations-Test, Abnahmetest)
  • Überblick über Test-Frameworks und -Werkzeuge (Open-Source-Lösungen) für Java-Anwendungen
  • Einbinden von automatisierten Tests in die Continuous Integration (CI)

Grundlagen von JUnit

  • Überblick über das JUnit-Framework
  • Integration von JUnit in Java-Entwicklungsumgebung und Build-Prozess
  • Migration bzw. Parallelbetrieb von JUnit 4 nach JUnit 5
  • Aufbau von Test-Klassen
  • Steuerung des Testablaufes mit Annotationen
  • Ergebnisprüfung mit Assertions und Assumptions
  • Testen von Exceptions
  • Best Practices vs. Bad Smells bei der Testautomatisierung

Aufbauwissen zu JUnit

  • Parametrisierte Tests
  • Zusammenstellung von Test-Suites
  • Test-Steuerung mit Tags
  • Flexible Ergebnisprüfung mit Matchers
  • Erweiterung von JUnit-Klassen mit Rules (JUnit 4)

Test-Driven Development (TDD)

  • Test-getriebene Entwicklung im Kontext des Entwicklungsprozesses
  • Test-First-Ansatz

Messung der Test-Überdeckung (Code Coverage)

  • Systematik der Test-Überdeckungsgrade
  • Überdeckungsmessung mit dem Framework Java Code Coverage (JaCoCo)

Grundlagen von Mocking

  • Konzept und Implementierung von Mock-Objekten
  • Dynamische Generierung mit Mocking-Frameworks
  • Nutzung des Mockito-Framework
  • Nutzung von Mockito für spezielle Mocking-Aufgaben

Weitere Aufgabenstellungen in der Testautomatisierung

  • Bereitstellung relationaler Testdaten mit dem DbUnit-Framework
  • Management von Test-Infrastruktur mit dem Testcontainers-Framework
  • Laufzeit-Messungen mit Java Microbenchmark Harness (JMH)
  • Performance- und Load-Testing mit dem Zerocode-Framework

Diese Schulung mit hohem Praxisbezug vermittelt den Teilnehmern die test-getriebene Vorgehensweise. Dazu wird der Umgang mit den Test- bzw. Mocking-Frameworks JUnit und Mockito sowie den darüber hinaus genannten Frameworks durch umfangreiche und vielfältige Übungsaufgaben vertieft.

Teilnehmerkreis und Voraussetzungen

Unsere Schulung richtet sich vornehmlich an Java-Entwickler, die den fundierten Einstieg in die Testautomatisierung erfolgreich meistern möchten. Das vermittelte Grundlagen-Wissen ist aber auch für Projektleiter, Software-Architekten oder Test-/Qualitäts-Verantwortliche sicherlich wichtig. Grundlegende Java-Kenntnisse und eine solide Programmiererfahrung werden für den praktischen Anteil in dieser Schulung vorausgesetzt.

Schulungstermine

23.09.–24.09.2024

Online
2 Tage
Rabatt ab 2 Personen
Plätze frei

1.180,00 €
Details

18.11.–19.11.2024

Köln / Online
2 Tage
Plätze frei

1.370,00 €
Details

16.12.–17.12.2024

Berlin
2 Tage
Rabatt ab 2 Personen
Plätze frei

1.280,00 €
Details

16.12.–17.12.2024

Online
2 Tage
Rabatt ab 2 Personen
Plätze frei

1.180,00 €
Details

27.01.–28.01.2025

Köln / Online
2 Tage
Plätze frei

1.370,00 €
Details

10.03.–11.03.2025

Online
2 Tage
Rabatt ab 2 Personen
Plätze frei

1.180,00 €
Details

10.03.–11.03.2025

Bielefeld
2 Tage
Rabatt ab 2 Personen
Plätze frei

1.280,00 €
Details

12.05.–13.05.2025

Köln / Online
2 Tage
Plätze frei

1.370,00 €
Details

07.07.–08.07.2025

Berlin
2 Tage
Rabatt ab 2 Personen
Plätze frei

1.280,00 €
Details

07.07.–08.07.2025

Online
2 Tage
Rabatt ab 2 Personen
Plätze frei

1.180,00 €
Details

Diese Schulung bieten wir auch als maßgeschneiderte Firmenschulung an

GEDOPLAN erstellt für Sie auf Ihre Unternehmensziele zugeschnittene Firmenschulung.
Durch unser modulares Schulungssystem sind wir in der Lage, anhand Ihrer Angaben eine individuelle Schulung zu gestalten. Denn die optimale Weiterbildung Ihrer Mitarbeiter nach Ihren Vorgaben und Anforderungen stehen bei uns im Mittelpunkt.
Bei Interesse nehmen Sie bitte Kontakt, wir führen dann gerne mit Ihnen ein unverbindliches Gespräch

GEDOPLAN - Telefonkontakt

030 / 20 89 82 63 0

GEDOPLAN - E-Mail Kontakt

Tim.Neumann@GEDOPLAN.de

Weitere Schulungen

Vorträge & News zum Thema

News aus Schulung, Beratung & Softwareentwicklung

News aus Schulung, Beratung & Softwareentwicklung