Java Effective Testing Kurs

Schreiben Sie gute Unit Test: Testable Design & Test Smells

Sie wollen gut strukturierte und hochwertige Unit Tests schreiben? Sie wollen schlechte Unit Tests auf Anhieb erkennen und die wichtigen Patterns meistern, wie Sie aus schlechten Tests gute Tests machen? Dann Sind Sie hier richtig! Holen Sie sich einen Kaffee und lesen Sie hier weiter über den Kurs..

Vorteile

  • Einen schnellen und guten Einstieg in Effektives Unit Testing mit Java
  • Kompetente Trainer: Buchautoren und Universitätsdozenten
  • Kompakt: auf das Wesentliche optimiert: 2 statt 3 Tage
  • Praxisorientiert:  30% Theorie und 70% Praxis nach Raed Lehrmethode
  • Intensive Betreuung: intensiv in kleinen Gruppen. Max. 8 Teilnehmer
  • Individuelle Betreuung: Schwerpunkte, Themen und Tempo werden während des Kurses - soweit wie möglich - an Ihre Vorkenntnisse angepasst
  • Nachhaltige Betreuung, falls Sie später Fragen zu den Kursfolien haben
  • Hochwertiges Lernmaterial und vielfältige Programmieraufgaben
  • Schönes Ambiente mit Verpflegung: Vormittagssnack, Getränke im Raum (Wasser, Saft, Kaffee, Cola), warmes Mittagessen, Kaffee und Kuchen Pause

Inhalte

  • Exkurs: JUnit 5
  • Parameterized Tests
  • Testable Design
  • SOLID Principles
  • Test Smells Catalog
  • Test Readability
  • Test Maintainability
  • Test Trustworthiness
AGENDA

Ziele

  • JUnit 5 besser und bedacht einsetzen
  • Wichtige Regeln zum Schreiben von guten Tests anhand von Testable Designs lernen und Effective Unit Testing implementieren
  • Schlechte Tests (Test Smells) erkennen und daraus wieder gute Tests machen
  • Code und Architektur Qualität durch gute Tests merklich erhöhen.
  • Motivation und Begeisterung zum Schreiben von Unit Test erwecken

Zielgruppe

Das Java Effective Testing Seminar an der Coding Akademie München richtet sich an Programmierer/innen mit grundlegenden Java und JUnit 5 Kenntnissen. Wenn Sie über vergleichbare Java Kenntnisse wie in unserem Java Kurs für Einsteiger und JUnit Kenntnisse wie in unserem Java Unit Testing haben, dann sind Sie in diesem Seminar garantiert richtig.

Programmierer mit Java Grundkenntnissen

Programmierer mit JUnit 5 Grundkenntnissen

Beschreibung

Dieser Kurs setzt voraus, dass Sie sich mit Unit Testing und Mockito vertraut sind (z.B. durch unseren Java Unit Testing Kurs). Sie sind Java Programmierer und wollen gerne nicht nur Ihren Production Code sondern auch den Test Code verbessern auf das nächste Level bringen! Das "Effektives Unit Testing" Seminar besteht auf zwei Hauptthemen. Das erste Thema ist, wie strukturiere ich meinen Test so, dass er leicht zu testen ist und das zweite Thema ist: wie erkenne und verbessere ich schlechte Tests (Test Smells)?

Was lernen Sie am ersten Tag? (Testable Design)

Am ersten Tag sehen wir uns das Lebenszyklus einer Unit Testing genau an. Eine kleine Wiederholung von Parameterized Tests aus Java Unit Testing Kurs. Danach machen wir erst mal eine Exkurs in Testable Design. Denn wenn man von Anfang an Code schreibt, der leicht zu testen ist, dann führt das meist zu einer sauberen Software Architektur. Denn wenn mein Code leicht zu testen ist, bedeutet dies, dass ich lose Kopplung und hohe Kohäsion habe. Mit anderen Wörtern habe ich wenige Schnittstellen, die alle gut und sauber designt. Die Kommunikation meiner Software Module verlaufen über diese Schnittstellen. Es ist daher keine Überraschung, dass Testable Design die gleichen clean Software Architektur Design Prinzipen empfiehlt, wie z.B. SOLID und GRASP Patterns. Wir erklären einige dieser Patterns anhand von ausgewählten Beispielen und ggf. Programmieraufgaben.
Zusammengefasst, hier lernen wir, wie wir gut strukturierte und lesbare Unit Tests schreiben und was das mit Clean Architektur Grundregeln (SOLID) zu tun hat!

Was lernen Sie am zweiten Tag? (Test Smells)

Ein Punkt fehlt noch. Wie erkenne ich schlechte Tests? und wie kann ich schlechte Tests verbessern? Schlechte Tests werden auch als "Test Smells" bezeichnet. Lasse Kosekla hat Test Smells in drei Kategorien unterteilt: Probleme mit der Lesbarkeit von Tests, Probleme mit der Wartbarkeit von Tests und Probleme mit dem Vertrauen in Tests. Unter jeder dieser Kategorie gibt es mehrere Test Smells Patterns. Es sind über 20 Patterns. Die Zeit reicht uns nicht aus, um alle diese Test Smells zu behandeln. Wir erklären die allerwichtigsten von denen, die in der Praxis - nach unserer Erfahrung im Bereich Technisches Coaching - am häufigsten vorkommen. Viele Beispiele erwähnen die wichtigsten Smell Patterns und wie Sie daraus einen guten und sauberen Tests machen.  Sie bekommen hier mehrere Aufgaben, bei denen es darum geht, schlechte Tests zu erkennen und sie ggf.zu verbessern. 

Nun haben Sie es geschafft. Nach diesem Kurs ist der Einstieg in Unit Testing und Schreiben von guten Tests geschafft. Die für viele am Anfang als lästige Aufgabe: Testen. werden Sie nicht mehr als lästig ansehen, sondern als spannend, motivierend und bei TDD sogar als ein Wegweiser für einen besseren Code und endlich setzen Sie dann die am meisten zurückgestellte Aufgabe (Testen) mit Freude um. Eine Aufgabe, die unserer Meinung nach, eine der wichtigsten Aufgabe bei dem Schreiben von guten Software. 

Die Trainer

Einer der folgendern Trainer wird das Java Effective Testing Kurs Seminar durchführen:

Trainer: Allaithy Raed

Allaithy Raed

Java Trainer, Coach, Consultant und Geschäftsführer
Experte für Java, Python, Clean Code, Clean SW-Architektur, Refactoring, Testing, Train The Trainer

Mehr Infos

Trainer: Dr. Matthias Hölzl

Dr. Matthias Hölzl

Ehemaliger Professor für Software and Computational Systems Engineering an der LMU München
Experte für Python, Java, C++, JavaScript, Clean Architektur, Künstliche Intelligenz, Agile Methoden

Mehr Infos

Trainer: Dr. Max Meier

Dr. Max Meier

Trainer, Technischer Coach, Consultant
Experte für .NET/C#, Software Architektur, API-Design

Mehr Infos

Trainer: Prof. Dr. Peer Kröger

Prof. Dr. Peer Kröger

Professor für künstliche Intelligenz und Datenbank an der Ludwig-Maximilians-Universität München
Experte für Künstliche Intelligenz, Data Mining, Maschinelles Lernen, Python, Datenbank

Mehr Infos

Zertifikat

Sie erhalten als Teilnehmer am Java Effective Testing Kurs ein anerkanntes Zertifikat. Voraussetzung dafür ist die komplette Teilnahme an allen Kurseinheiten und Programmier-Aufgaben und die erfolgreiche Programmierung eines kleinen Abschlussprojektes. Das allerdings wird Ihnen nach diesem intensiven Kurs mehr Freude als Stress bereiten.