Überblick
Testgetriebene Entwicklung (TDD) ist eine der wirksamsten Methoden, um die Codequalität nachhaltig zu verbessern. Bei TDD schreiben Sie zuerst den Test, dann den Code – und erhalten so eine lückenlose Testabdeckung von Anfang an. Diese Schulung zeigt Ihnen, wie Sie TDD in der Praxis mit Visual Studio und dem .NET-Ökosystem einsetzen.
Sie lernen die drei großen .NET-Testframeworks kennen, arbeiten mit Mocking-Bibliotheken und erfahren, wie Sie Testing in Ihre Build-Pipeline integrieren. Am Ende der Schulung können Sie eigenständig eine robuste Teststrategie für Ihre Projekte entwickeln und umsetzen.
Schulungsinhalte
xUnit.net
Das moderne Testframework für .NET: Aufbau, Assertions, Theories und parametrisierte Tests.
NUnit & MSTest
Alternative Frameworks im Vergleich: Setup/Teardown, Attribute, Testklassen und Migration.
Mocking & Fakes
Abhängigkeiten isolieren mit Moq, NSubstitute und Microsoft Fakes für echte Unit Tests.
Integration Tests
WebApplicationFactory, TestServer und Datenbank-Tests mit In-Memory-Providern.
Code Coverage
Testabdeckung messen, visualisieren und sinnvoll interpretieren – Coverlet und Visual Studio.
CI/CD Testing
Tests in Azure DevOps, GitHub Actions und Jenkins automatisiert ausführen und auswerten.
Refactoring mit Tests
Legacy-Code sicher umbauen: Charakterisierungstests, Seams und schrittweise Verbesserung.
Best Practices
Testbenennung, Arrange-Act-Assert, Test-Isolation und Anti-Patterns vermeiden.
Formate
Crashkurs
Überblick über TDD-Grundlagen und die wichtigsten Frameworks. Ideal als Einstieg.
Standard
Vollständiger Kurs mit Praxisübungen, Mocking, Integration Tests und CI/CD.
Intensiv
Inklusive Legacy-Refactoring, Architektur-Tests und individuellem Code-Review.
Zielgruppe
Die Schulung richtet sich an .NET-Entwickler, die ihre Testpraxis verbessern oder TDD erstmals systematisch einführen möchten. Auch erfahrene Entwickler, die bisher wenig mit automatisierten Tests gearbeitet haben, finden hier einen strukturierten Einstieg. Grundkenntnisse in C# und Visual Studio werden vorausgesetzt.
