Kursübersicht

Dieser intensive zweitägige Kurs lehrt Entwickler, wie sie testgetriebene Entwicklung (TDD) effektiv in ihrer täglichen Arbeit anwenden können. Sie lernen die grundlegenden Prinzipien, Praktiken und Vorteile des Test-First-Schreibens und wie TDD zu besserem Design, saubererem Code und wartbareren Softwaresystemen führt. Perfekt für Entwickler, die ihre Codequalität und Designfähigkeiten durch disziplinierte Testpraktiken verbessern möchten.

Durch praktische Programmierübungen und realistische Beispiele meistern Sie den Red-Green-Refactor-Zyklus und entdecken, wie TDD zu besserer Softwarearchitektur führt. Der Kurs betont die praktische Anwendung mit umfangreicher Programmierpraxis in einer unterstützenden Umgebung, in der Sie sowohl aus Erfolgen als auch aus Fehlern lernen können. Am Ende werden Sie das Vertrauen haben, TDD in Ihren Projekten anzuwenden und verstehen, wie es in moderne agile Entwicklungspraktiken passt.

Lernziele

  • Den Red-Green-Refactor-Zyklus und TDD-Workflow meistern
  • Effektive Unit-Tests schreiben, die Designentscheidungen leiten
  • TDD auf neue und Legacy-Codebasen anwenden
  • Test-Doubles (Mocks, Stubs, Fakes) effektiv nutzen
  • Code mit Zuversicht unter Verwendung der Testabdeckung refaktorisieren
  • TDD mit Continuous-Integration-Praktiken integrieren
  • Häufige TDD-Anti-Patterns erkennen und vermeiden

Behandelte Themen

  1. TDD-Grundlagen - Prinzipien und der Red-Green-Refactor-Zyklus
  2. Unit-Testing-Exzellenz - Effektive, wartbare Tests schreiben
  3. Test-First-Design - Tests zur Architekturgestaltung nutzen
  4. Refactoring-Techniken - Sichere Code-Verbesserungen mit Tests
  5. Test-Doubles - Mocks, Stubs und Fakes in der Praxis
  6. Legacy-Code TDD - Tests in bestehende Systeme einführen
  7. CI/CD-Integration - TDD in modernen Entwicklungspipelines

Was Sie erhalten

  • Praktische Programmierübungen und Übungs-Katas
  • TDD-Beispiele aus der realen Welt
  • Erfahrung mit beliebten Test-Frameworks
  • Best Practices für Teststruktur und -benennung
  • Refactoring-Techniken und -Muster