UID:
edocfu_9961553962002883
Format:
1 online resource (578 p.)
Edition:
2nd ed.
ISBN:
3-8266-8721-3
,
3-8266-8722-1
Series Statement:
mitp Professional
Content:
Unit Testing: Grundlagen Test-Hierarchien und -Organisation Mit Legacy Code arbeiten Das einzige deutsche Buch zu Unit Testing mit .NET Vieles wäre besser, wenn Software fehlerfrei wäre. Leider tendiert sie dazu, Fehler zu beinhalten. Daher wird Software normalerweise während der Entwicklung getestet; jedoch kann dies gerade bei großen Projekten ein mühsames Unterfangen sein. Unit Tests sind Programme, die überprüfen, ob die von den Entwicklern geschriebenen Komponenten so arbeiten, wie diese es beabsichtigen. Dieses Buch führt den Leser Schritt für Schritt von einfachen Tests bis hin zu Tes
Note:
Description based upon print version of record.
,
Impressum; Vorwort zur zweiten Auflage; Vorwort zur ersten Auflage; Einleitung; Teil I: Erste Schritte; Kapitel 1: Die Grundlagen des Unit Testings; 1.1 Unit Testing - Schritt für Schritt definiert; 1.1.1 Die Bedeutung guter Unit Tests; 1.1.2 Wir alle haben schon Unit Tests geschrieben (irgendwie); 1.2 Eigenschaften eines »guten« Unit Tests; 1.3 Integrationstests; 1.3.1 Nachteile von nicht automatisierten Integrationstests im Vergleich zu automatisierten Unit Tests; 1.4 Was Unit Tests »gut« macht; 1.5 Ein einfaches Unit-Test-Beispiel; 1.6 Testgetriebene Entwicklung
,
1.7 Die drei Schlüsselqualifikationen für erfolgreiches TDD1.8 Zusammenfassung; Kapitel 2: Ein erster Unit Test; 2.1 Frameworks für das Unit Testing; 2.1.1 Was Unit-Testing-Frameworks bieten; 2.1.2 Die xUnit-Frameworks; 2.2 Das LogAn-Projekt wird vorgestellt; 2.3 Die ersten Schritte mit NUnit; 2.3.1 Die Installation von NUnit; 2.3.2 Das Laden der Projektmappe; 2.3.3 Die Verwendung der NUnit-Attribute in Ihrem Code; 2.4 Sie schreiben Ihren ersten Test; 2.4.1 Die Klasse Assert; 2.4.2 Sie führen Ihren ersten Test mit NUnit aus; 2.4.3 Sie fügen positive Tests hinzu
,
2.4.4 Von Rot nach Grün: das erfolgreiche Ausführen der Tests2.4.5 Test-Code-Gestaltung; 2.5 Refactoring zu parametrisierten Tests; 2.6 Weitere NUnit-Attribute; 2.6.1 Aufbau und Abbau; 2.6.2 Auf erwartete Ausnahmen prüfen; 2.6.3 Das Ignorieren von Tests; 2.6.4 Die fließende Syntax von NUnit; 2.6.5 Das Festlegen der Testkategorien; 2.7 Das Testen auf Zustandsänderungen des Systems statt auf Rückgabewerte; 2.8 Zusammenfassung; Teil II: Zentrale Methoden; Kapitel 3: Die Verwendung von Stubs, um Abhängigkeiten aufzulösen; 3.1 Die Stubs werden vorgestellt
,
3.2 Die Identifizierung einer Dateisystemabhängigkeit in LogAn3.3 Die Entscheidung, wie LogAnalyzer am einfachsten getestet werden kann; 3.4 Design-Refactoring zur Verbesserung der Testbarkeit; 3.4.1 Extrahiere ein Interface, um die dahinter liegende Implementierung durch eine andere ersetzen zu können; 3.4.2 Dependency Injection: Injiziere eine Fake-Implementierung in die zu testende Unit; 3.4.3 Injiziere einen Fake auf Konstruktor-Ebene (Construktor Injection); 3.4.4 Simuliere Ausnahmen über Fakes; 3.4.5 Injiziere ein Fake als Property Get oder Set
,
3.4.6 Injiziere einen Fake unmittelbar vor einem Methodenaufruf3.5 Variationen der Refactoring-Technik; 3.5.1 Die Verwendung von Extract and Override, um Fake-Resultate zu erzeugen; 3.6 Die Überwindung des Kapselungsproblems; 3.6.1 Die Verwendung von internal und [InternalsVisibleTo]; 3.6.2 Die Verwendung des Attributs [Conditional]; 3.6.3 Die Verwendung von #if und #endif zur bedingten Kompilierung; 3.7 Zusammenfassung; Kapitel 4: Interaction Testing mit Mock-Objekten; 4.1 Wertbasiertes Testen versus zustandsbasiertes Testen versus Testen versus Interaction Testing
,
4.2 Der Unterschied zwischen Mocks und Stubs
Language:
German