Unit Test 03: Unit Test Java
Unit Test Praxiskurs für Programmierer

Du willst strukturierte und hochwertige Unit Tests für Deinen Java Code schreiben? Du willst gerne Datenbanken, fremde APIs und fremden Code testen, oder schlechte und sinnlose Unit Tests auf Anhieb erkennen und anhand von bewährten Patterns in gute Unit Tests umwandeln? Oder Du willst endlich wissen, wie Test-Driven-Development in der Praxis aussieht und wie Du TDD vernünftig einsetzen kannst? Dann brauchst Du nicht weiter zu suchen. Das Java Unit Testing Praxisseminar ist ideal für alle Java-Programmierer, die JUnit 5, Mockito und MockPower auf effiziente und praxisorientierte Weise mittels anschaulicher Beispiele und Aufgaben erlernen möchten, um damit Java Code sauber testen und erheblich verbessern zu können. Erfahre mehr über dieses Unit Test Praxisseminar..

Nutzen

  • Schneller und effektiver Einstieg in JUnit 5 und Mockito
  • Praktischer Einstieg Test-Driven-Development (TDD)
  • Best Practices für Testable Design, Clean Test und Test Smell
  • Fortgeschrittene Techniken wie Test Double
  • Code Qualität durch gute Tests deutlich verbessern

Anhand vieler Beispiele und Aufgaben lernst Du die wichtigsten Java Testing Frameworks (JUnit 5 & Moskito) sowie fortgeschrittene Techniken wie TDD aus praktischer Sicht kennen und in Deinem laufenden Projekt erfolgreich einzusetzen. Auch goldene Regeln für Clean Test und Code lernst Du kennen und anzuwenden. Du verbesserst die Qualität und Güte Deines Java Production Codes und verkürzt somit die Entwicklungszeit.

Kursformate

1-Tages-Crash-Kurs

Live-Training

Live oder online large

Lehrmaterial

Lehrmaterial

Video-Clips

Video clips
3-Tages-Kurs

Live-Training

Live oder online large

Lehrmaterial

Lehrmaterial

Verpflegung

Snacks large
4-Wochen Trainingsprogramm

Live-Training

Online large

Lehrmaterial

Lehrmaterial

Video-Clips

Video clips

Alle Kurse beinhalten zusätzlich den zeitlich unbegrenzten Zugang zu unserem Member-Bereich mit vielen weiteren Videos, Tutorials und Infos rund ums Coden.

Inhalte

Dieser Unit Test mit Java Kurs behandelt eine Auswahl folgender Themen:

  • Test Structure
  • Name Conversion
  • Test Lifecycle
  • Test Data
  • Annotations
  • Assertions
  • Parameterized Test
  • Test Double
  • Mockito Framework
  • PowerMock Framework
  • Test-Driven-Development
  • Test Smells Catalog
  • Test Readability
  • Test Maintainability
  • Test Trustworthiness

Für weitere Details bitte die untenstehende Agenda ansehen.

Vorkenntnisse

Das JUnit 5, TDD und Mockito Seminar an der Münchner Coding Akademie richtet sich an Programmierer mit grundlegenden Java-Kenntnissen. Es setzt keine Kenntnisse in alten JUnit Versionen voraus.

  • Individuell: wir gehen gezielt auf Dich ein und berücksichtigen Deine Vorkenntnisse, Wunschthemen und Schwerpunkte

  • Strukturiert und leicht verständlich

  • Bringe deine Karriere, Studium oder Ausbildung auf die nächste Stufe: mit Zertifikat

  • Sicher und eigenständig Programme entwickeln (ob privat, beruflich oder für dein Startup)

  • Viel, viel, viel Praxis: sofort anwendbare Ergebnisse

  • kleine Gruppen: max. 8 Teilnehmer im 3-Tages-Kurs max. 15 Teilnehmer im Online-Coaching

  • Von Experten nach der Raed- Methode® entwickelt & auf die Anforderungen von Tech-Unternehmen im Jahr 2020 ausgerichtet

  • E-Mail-Support auch nach Ende des Kurses

Kursbeschreibung

Die Unit 5 mit Mockito Schulung der Coding Akademie München ist auf 3 Tage angesetzt und wie gemacht für alle Java Programmierer, die ihren eigenen oder fremden Java Code von Dritten testen wollen. Mit Unit Tests kannst Du überprüfen, ob Deinen Code genau das tut, was man von ihm erwartet. Unit Tests erhöhen erfahrungsgemäß die Qualität des Programmiercodes. Denn zum Schreiben von Tests muss man sich mit dem Production Code genau beschäftigen. Oft entdeckt man dabei Fehler (Bugs) und kommt auf bessere Lösungsansätze. In diesem Unit Testing Kurs geht es darum, die Grundlagen von JUnit 5 , Mockito, PowerMock und Test-Driven-Development mit Hilfe von vielen Beispiele und Aufgaben zu meistern, so dass Du diese Techniken unmittelbar einsetzen kannst.

Mit JUnit 5 kannst Du Deinen Production Code schnell und einfach testen. Das Prinzip ist relativ einfach, es geht um die Frage: was erwarte ich von meiner Methode und was liefert sie genau, also um einen Soll/Ist Vergleich der Werte. JUnit 5 ist der Nachfolge von JUnit 4. Es ist ein Testing Framework, das Dir in Java auch dabei hilft neue Sprachkonzepte wie Lambda Expressions leicht zu testen – denn ab JUnit 5 dürfen Test Methoden sogar Parameter haben. Mit Mockito kannst Du APIs Code, Datenbank (CRUD Operationen) sowie Client/Server Anwendungen testen, indem Du das Verhalten von einem solchen Code lokal imitieren und simulieren kannst.

Was lernst Du am ersten Tag?

Du lernst wie Du Dein erstes Unit Testing Programm schreiben kannst. Wir steigen langsam ein und schauen uns das Soll/Ist Prinzip von Testing Frameworks an. Du lernst wie die Test Struktur aussehen soll, wie Du Deine Test-Methoden benennen solltest und wie Du die Testdaten ausfindig machen kannst. Dafür eignen sich die Äquivalenz-Klassen sowie Randwerte Techniken. Du meisterst die Syntax und Semantik von Unit Test wie z.B. Annotations und die Assertion. Auch Fortgeschrittene Techniken wie parameterized Tests lernst und beherrschst Du bereits am ersten Tag. Nach diesem Tag kannst Du bereits gut Unit Tests für Deinen Java Code schreiben und anwenden.

Was lernst Du am am zweiten Tag?

Am zweiten Tag lernst Du wie Du Datenbank und fremde APIs testen kannst, in dem den Code von denen simulierst. Dafür gibt es die Test Double Technik. Test Double ist ein Sammelbegriff für 5 Techniken: Dummy, Fake, Stub, Spy und Mock. Da es ziemlich aufwendig und zum Teil schwierig ist, solche Test Double Techniken selber von scratch zu implementieren, gibt es bereits Frameworks, welche diese Techniken weitgehend realisieren und vereinfachen. Eins davon ist Mockito und PowerMocks. Du lernst wie Du Mockito und PowerMock aufsetzt und ausführst. Dafür schauen wir uns ein Bestell-System Programm an, geschrieben in Java EE oder Java Spring. Mit Mockito und PowerMock testen wir den Bestellvorgang und die grundlegenden CRUD-Datenbank Operationen (Create, Read, Update, Delete), die bei einem solchen System häufig vorkommen.

Mit JUnit 5, Mockito und PowerMocks Grundlagen bist Du bereits nach dem zweiten Tag in der Lage umfangreichen Test für Deinen Java Code zu schreiben. Sogar wirst Du merken, dass diese Unit Test schreiben, welche als -lästige nachträgliche Aufgabe bei vielen Programmierern angesehen wird- doch gar nicht so lästig ist und sogar Spaß und Freude macht, wenn man den Test durchführt und plötzlich alles grün ist. Es ist ein schönes und angenehmes Gefühl, das man erleben sollte!

Was lernst Du am am dritten Tag?

am letzten Unit Testing Schulung mit Java geht es darum, wie Du gute Tests schreibst. Hier lernst Du die SOLID Prinzipen für Testable Design. Danach schauen wir uns die Test-Driven-Development (TDD)Technik an. TDD realisiert die "Test First: Test code vor Production code" Methode. TDD verlangsamt zwar am Anfang die Entwicklungsgeschwindigkeit, holt aber später massiv nach an Geschwindigkeit und ist durchaus vorteilhafter ist, als die Tests nachträglich zu schreiben. Denn Clean Code basiert weitgehend auch darauf, dass man Unit Tests vor Production Code schreibt und sich daher grundlegende Gedanken über den Production Code machen muss! Du lernst auch die wichtigen Regeln zum Schreiben von aussagekräftigen und guten Tests und die Best-Practice dazu. Dadurch erkennst Du die sogenannte "Test-Smells". Test-Smells ist ein Begriff für schlechte Tests, welche eher Nachteile als Vorteile bringen. Hier gibt es ein langes Katalog dafür, welches die Test-Smells in 3 Kategorien unterteilt und bei jeder Kategorie gibt es etliche Test-Smells Fälle. Wir sehen uns die allerwichtigste Test-Smells Fälle an. 

DEINE TRAINER

Der Unit Test Kurs für Java Programmierer wird von einem der folgenden Trainer durchgeführt:

ZERTIFIKAT

Selbstverständlich erhältst Du als Teilnehmer am Java Unit Test Kurs für Programmierer ein Zertifikat. Voraussetzung dafür ist die komplette Teilnahme an allen Kurseinheiten und Programmier-Aufgaben und die erfolgreiche Programmierung eines kleinen Abschlussprojektes. Das allerdings wird Dir nach diesem intensiven Unit Testing Kurs mehr Freude als Stress bereiten.

AGENDA

Die Agenda ist aufgrund der zahlreichen Fachbegriffe in englischer Sprache verfasst. Beschreibungen sowie Kursmaterial erhaltest Du auf Deutsch. Den Kurs kannst Du wahlweise in deutscher oder englischer Sprache buchen.

Alle Seminarinhalte werden individuell an die Wünsche unserer Teilnehmer angepasst. Sie können je nach Wissensstand variieren und werden gemeinsam mit dem Seminarleiter an Tag 1 definiert. Bei diesem Java Unit-Test-Seminar hast Du die Wahl aus folgenden Themen:

Java Unit Testing Für Programmierer Tag 1

Introduction:

  • Test Motivation
  • Test Frameworks
  • JUnit 4 and JUnit 5
  • JUnit 5 vs. JUnit 4
  • Testing Questions

Generic Rules:

  • Test Structure
  • Test Life Cyce
  • The AAA-Rule
  • Name Conversions
  • Test Data
  • Happy Path
  • Exception Path
  • Equivalence classes
  • Test Strategy

Annotation

  • @Test
  • @BeforeEach
  • @AfterEach
  • @BeforeAll
  • @AfterAll
  • @Disabled
  • @DisplayName
  • @Nested
  • @RepeatedTest
  • @Tag
  • ..

Assertions

  • fail
  • assertTrue
  • assertFalse
  • assertNull
  • assertNotNull
  • assertEquals
  • assertNotEquals
  • assertArrayEquals
  • assertAll
  • assertThrow
  • assertTimeout
  • assertIterableEquals
  • assertLinesMatch
  • Functional Interface
  • ...

Parameterized Test

  • Configuration
  • @ValueSource
  • @EnumSource
  • @MethodSource
  • @CsvSource
  • @CsvFileSource
  • @ArgumentSource
  • ..

Java Unit Testing Für Programmierer Tag 2

Test Double

  • Motivation
  • Testing Database?
  • Dummy
  • Fake
  • Stub
  • Spy
  • Mock

Mockito Basic

  • Maven or Gradle
  • Spring Example
  • System Under Test SUT
  • Mockito Idee
  • Mockito Annotations
  • @Mocks
  • @InjectMocks
  • @Spy
  • when then Return
  • doReturn when
  • when thenThrow
  • when thenAnswer
  • doNothing when
  • given withReturn
  • given willThrow
  • given willAnswer
  • verify
  • Mockito Steps
  • Stubbing
  • Setting Expectations
  • Verify

Mockito Advanced

  • Hamcrest Matcher
  • @RunWith
  • @Captor
  • Mockito Spy
  • Mockito Restriction
  • Final and Private Methods?

Powermock

  • Setting up PowerMock
  • Mocking Static Method
  • Invoking Private Method
  • Mocking a Constructor

Java Unit Testing Für Programmierer Tag 3

Test Driven Development

  • Motivation
  • RED
  • GREEN
  • REFACTORING
  • Baby Steps
  • TDD Advantages

Testable Design

  • SOLID Principle
  • Single Responsibility
  • Open Close
  • Liskov Substitution
  • Interface Segregation
  • Dependency Inversion

Clean Test

  • Clean Test Rules
  • Test Readability
  • Test Maintainability
  • Test Trustworthiness
  • Test Smells Catalog

Kursformate / Termine

1-Tages-Crash-Kurs

In München oder Online
830,00 €

3-Tages-Kurs

In München oder Online
ab 1.876,00 €

4-Wochen-Training

1.876,00 €
Einstieg jederzeit möglich

Für Teams

Haben Sie Interesse an einem Kurs für Ihr Team? Get in touch – wir finden eine perfekte Lösung. Gerne kommen unsere Profis auch zu Ihnen. Wir bieten u.a.:

  • Inhouse-Schulungen
  • Technisches Coaching
  • Consulting
Anfragen Anfragen

Fragen & Beratung

Unser Serviceteam berät Sie gerne persönlich. Mo-Fr von 9.00 bis 18.00 Uhr unter:
+49 89 17958-820
info@coding-academy.com

Referenzen

BMW Apple Draeger VW Sky Siemens 2000px TÜ V Süd Logo Agfa Kopie Samsung Fraunhofer
Kurs-Katalog Raketen-Kurse im Überblick: