Fantom Tag

Schulung - Test Driven Development mit .NET

Testgetriebene Softwareentwicklung mit C#, Visual Studio, Unit-Tests, Mocking und Refactoring praktisch anwenden

  • Live Online oder Präsenz
DURCHFÜHRUNG MIT TERMIN
Dauer
3 Tage (21 Stunden)

Preis ab
1.790,00 € netto
2.130,10 € inkl. 19% MwSt.

Referenz
3466
TERMIN UND ORT NACH ABSPRACHE
Dauer
3 Tage (21 Stunden)


Referenz
3466
On-demand Training
Sind Sie an diesem Thema interessiert?
Unsere Experten entwickeln Ihr individuell angepasstes Seminar!

Zuverlässige Software entsteht nicht erst beim abschließenden Test, sondern während der Entwicklung. Test Driven Development (TDD) setzt genau dort an: Anforderungen werden in ausführbare Tests übersetzt, Implementierungsschritte werden klein gehalten und Refactoring wird durch automatisierte Tests abgesichert.

In dieser dreitägigen Schulung lernen Sie, wie Sie TDD in .NET-Projekten methodisch und praktisch einsetzen. Sie arbeiten mit Unit-Tests, dem Visual Studio Testframework, Mocking mit JustMock-Lite und praxisnahen Entwicklungsbeispielen in C#. Dabei geht es nicht nur um Werkzeuge, sondern vor allem um testbares Design, klare Schnittstellen, saubere Abhängigkeiten und sichere Weiterentwicklung bestehender Anwendungen.

Ein besonderer Schwerpunkt liegt auf praktischer Projektarbeit: Die Teilnehmenden entwickeln mindestens ein größeres Beispiel testgetrieben und erleben den TDD-Zyklus aus Test, Implementierung und Refactoring unmittelbar am Code. Ergänzend werden typische Testarten, Testfälle, Blackbox- und Whitebox-Perspektiven, Mocking, Datenbanktests und Tests für Multithreading-Szenarien eingeordnet.

Trainingsziel:

Die Teilnehmenden können Test Driven Development in .NET-Projekten nachvollziehbar anwenden, automatisierte Tests sinnvoll strukturieren und Refactoring-Schritte durch Tests absichern. Sie verstehen, wie TDD zu besser testbarem, modularerem und wartbarerem Code beiträgt.

Kompetenzen:

  • testgetriebene Entwicklung
  • testbares Softwaredesign
  • automatisiertes Testen
  • Mocking und Abhängigkeitsisolation
  • Refactoring und Qualitätssicherung in .NET-Projekten

Lernziele:

Nach dem Seminar können die Teilnehmenden:
  • zentrale Testarten und Testbegriffe sicher einordnen
  • Unit-Tests mit dem Visual Studio Testframework formulieren und ausführen
  • Testfälle als ausführbare Spezifikation nutzen
  • Blackbox- und Whitebox-Perspektiven unterscheiden
  • Mocking einsetzen, um Abhängigkeiten zu isolieren
  • TDD-Schritte in einem realistischen Beispielprojekt durchführen
  • Refactoring anhand bestehender Tests absichern
  • typische Herausforderungen bei Datenbank- und Multithreading-Tests einschätzen
Die Teilnehmenden entwickeln ein belastbares Verständnis dafür, wie Tests nicht nur Fehler finden, sondern Softwareentwurf aktiv steuern. Sie können TDD als praktischen Entwicklungsrhythmus einsetzen und bewerten, wann welcher Testansatz sinnvoll ist.

Für Teilnehmende:

  • Sie verstehen den TDD-Zyklus und können ihn in C#/.NET-Projekten anwenden.
  • Sie formulieren aussagekräftige Unit-Tests und nutzen Tests als Spezifikation und Dokumentation.
  • Sie erkennen, wie testbares Design durch Interfaces, klare Verantwortlichkeiten und Dependency Injection entsteht.
  • Sie setzen Mocking gezielt ein, um Abhängigkeiten zu isolieren und Interaktionen zu prüfen.
  • Sie führen Refactorings sicherer durch, weil Änderungen durch automatisierte Tests abgesichert sind.
Für Unternehmen:

  • Entwicklungsprozesse werden robuster, weil Fehler früher sichtbar werden.
  • Bestehende Codebasen können schrittweise verbessert und besser testbar gemacht werden.
  • Teams gewinnen ein gemeinsames Verständnis für Testbarkeit, Clean Code und wartbare Architektur.
  • Die Qualität geschäftskritischer .NET-Anwendungen lässt sich nachhaltiger sichern.

Zielgruppe

Wer sollte teilnehmen:

Zielgruppe

Rollen:
  • .NET-Entwickler:innen und C#-Entwickler:innen
  • Softwareentwickler:innen mit Fokus auf Qualität, Wartbarkeit und Testautomatisierung
  • Softwarearchitekt:innen und technische Leads, die testbares Design fördern möchten
  • Entwickler:innen in agilen Teams, die TDD, CI/CD und Refactoring professioneller einsetzen wollen
Erfahrungslevel:
  • Fortgeschrittene Einsteiger:innen bis erfahrene Entwickler:innen
  • nicht geeignet als C#-Grundlagenseminar
Typischer Anwendungskontext:
  • Entwicklung und Wartung von .NET-Anwendungen
  • Modernisierung und schrittweise Verbesserung bestehender Codebasen
  • Aufbau oder Professionalisierung automatisierter Tests in Entwicklungsteams

Voraussetzungen

  • Solide Kenntnisse in C# und objektorientierter Programmierung
  • Grundverständnis von Klassen, Interfaces, Vererbung, Delegates und Exceptions
  • Erste Erfahrung mit Visual Studio oder vergleichbaren Entwicklungsumgebungen
  • Hilfreich: Grundkenntnisse in agiler Softwareentwicklung, Clean Code oder Unit Testing
Das Seminar ist bewusst praktisch angelegt. Teilnehmende sollten bereit sein, Code zu lesen, Tests zu schreiben und Entwicklungsentscheidungen zu diskutieren.
Programm

Trainingsprogramm

Modul 1: Grundlagen des Softwaretestens und TDD

  • Vorurteile und typische Missverständnisse beim Testen
  • Manuelles Testen vs. automatisierte Tests
  • Unit-Tests, Integrationstests, Akzeptanztests
  • Blackbox- und Whitebox-Test
  • Testabdeckung, Äquivalenzklassen und sinnvolle Testfälle
  • TDD-Grundidee: Red - Green - Refactor

Modul 2: Unit Testing in .NET

  • Aufbau automatisierter Tests
  • Assert-Methoden und Teststruktur
  • Visual Studio Testframework
  • Testmethoden, Testklassen, Setup und Cleanup
  • Testen von Exceptions und Randfällen
  • Tests als Spezifikation und Dokumentation

Modul 3: Übungen zu Testfällen und testbarem Code

  • nachträgliches Testen vorhandener Klassen
  • Umgang mit Dateien, Events und typisierten Properties
  • Kriterien guter Testmethoden
  • Unabhängigkeit, Lesbarkeit und Wartbarkeit von Tests

Modul 4: Mocking und Abhängigkeitsisolation

  • Grundidee von Mocks, Fakes und Stubs
  • Programming against Interfaces
  • Interaktionstests und Whitebox-Perspektive
  • Mocking mit JustMock-Lite
  • Arrange - Act - Assert
  • Einführung in Reflection und Dynamic Proxies als Verständnisbasis

Modul 5: TDD in der Praxis

  • testgetriebene Entwicklung an einem realistischen Beispielprojekt
  • kleine Entwicklungsschritte und kontinuierliches Feedback
  • Beispiele: Parser für numerische Expressions, logische Schaltungen oder Geldbeträge/Währungen
  • Testfälle formulieren, Implementierung ableiten, Refactoring durchführen

Modul 6: Refactoring, Datenbanktests und Multithreading

  • Refactoring eines bestehenden, schlecht strukturierten Programms
  • Entwicklung testbarer Klassenstrukturen
  • Grundprinzipien beim Testen von Datenbankzugriffen
  • Herausforderungen beim Testen von Multithreading-Tools
  • Transfer in eigene .NET-Projekte
Methodik

Methodik

Das Seminar kombiniert:

  • fachliche Impulse und Live-Demonstrationen
  • gemeinsame Code-Analyse und Diskussion von Designentscheidungen
  • praktische Übungen direkt in Visual Studio
  • Test-first-Entwicklung in kleinen Schritten
  • Refactoring-Phasen mit unmittelbarer Testabsicherung
  • Erfahrungsaustausch zu typischen Herausforderungen in .NET-Projekten

Die Methodik ist bewusst praxisorientiert. Der Schwerpunkt liegt auf eigenem Tun, nicht auf reiner Tool-Demonstration.

Hinweis

Hinweis

Hinweis für Online-Schulungen:

Wir empfehlen für die Schulung die Verwendung von zwei Bildschirmen. So können Sie die Schulungsinhalte verfolgen und gleichzeitig in Visual Studio an den Übungen arbeiten, ohne ständig zwischen Fenstern wechseln zu müssen.
Die bereitgestellten Beispielprojekte enthalten Quellcode und müssen zu Beginn in Visual Studio neu erstellt werden.

Weiterführende Informationen:
Eine Auswahl vertiefender Inhalte und praxisorientierter Beiträge zum Thema Programmiersprachen findet sich im Programmiersprachen-Blog.

Häufig gestellte Fragen (FAQ)

Häufig gestellte Fragen (FAQ)

Für wen ist das Seminar geeignet?

Für .NET- und C#-Entwickler:innen sowie Softwarearchitekt:innen, der automatisierten Tests, TDD und testbares Design praktisch einsetzen möchten.

Brauche ich bereits Erfahrung mit Unit Testing?

Grundkenntnisse sind hilfreich, aber nicht zwingend. Wichtig sind solide C#- und Objektorientierungskenntnisse.

Ist das Seminar ein reiner Toolkurs?

Nein. Werkzeuge werden eingesetzt, aber der Schwerpunkt liegt auf der Methode: Tests als Spezifikation, kleine Entwicklungsschritte, Mocking, Refactoring und testbares Design.

Welche Werkzeuge werden verwendet?

Im Mittelpunkt stehen das Visual Studio Testframework und JustMock-Lite. Ergänzend werden die Prinzipien hinter Test- und Mocking-Werkzeugen erläutert.

Wird auch bestehender Code behandelt?

Ja. Refactoring und das nachträgliche Testen vorhandener Klassen sind Teil des Seminars.

Welche Rolle spielt Mocking?

Mocking wird genutzt, um Abhängigkeiten zu isolieren, Interaktionen zu prüfen und schwer testbare Komponenten gezielt beherrschbar zu machen.

Ist das Seminar auch für agile Teams relevant?

Ja. TDD passt sehr gut zu agilen Entwicklungsprozessen, weil es kurze Feedbackzyklen, kontinuierliche Verbesserung und sichere Änderungen unterstützt.

Termine

  • 1.790,00 € Netto
    Noch freie Plätze
    Jetzt buchen
    online Training
    Live Online Training
  • 1.790,00 € Netto
    Noch freie Plätze
    Jetzt buchen
    Cegos Integrata GmbH FrankfurtAirPark
    Bessie-Coleman-Straße 13
    60549 Frankfurt am Main
  • 1.790,00 € Netto
    Noch freie Plätze
    Jetzt buchen
    online Training
    Live Online Training
  • 1.790,00 € Netto
    Noch freie Plätze
    Jetzt buchen
    online Training
    Live Online Training