Testgetriebene Entwicklung mit C++ : Sauberer Code. Bessere Produkte.
Testgetriebene Entwicklung (TDD) ist eine moderne Methode in der Softwareentwicklung, mit der Programmierer und Tester die Anzahl der Fehler im System erheblich verringern, wartungsfreundlicheren Code schreiben und die Software gefahrlos an geänderte Anforderungen anpassen können. Dieses Buch verm...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Alemán Inglés |
Publicado: |
Heidelberg :
Dpunkt.verlag,
2014.
|
Temas: | |
Acceso en línea: | Texto completo (Requiere registro previo con correo institucional) |
Tabla de Contenidos:
- Testgetriebene Entwicklung mit C++; Jeff Langr; Impressum; Inhaltsverzeichnis; Geleitwort; Einleitung; 1 Einführung; 1.1 Setup1; 1.2 Die Beispiele; 1.3 C++-Compiler; 1.3.1 Ubuntu; 1.3.2 OS X; 1.3.3 Windows; 1.4 CMake; 1.5 Google Mock; 1.5.1 Google Mock installieren; 1.5.2 Ein Main-Programm zum Ausführen von Google-Mock-Tests erstellen; 1.6 CppUTest; 1.6.1 CppUTest installieren; 1.6.2 Ein Main-Programm zum Ausführen von CppUTest-Tests erstellen; 1.7 libcurl; 1.8 JsonCpp; 1.9 rlog; 1.10 Boost; 1.11 Beispiele erstellen und Tests ausführen; 1.12 Teardown5.
- 2 Testgetriebene Entwicklung: Ein erstes Beispiel2.1 Setup; 2.2 Der Soundex-Algorithmus; 2.3 Erste Schritte; 2.4 Unsauberen Code korrigieren; 2.5 Schrittweises Vorgehen; 2.6 Fixtures ; 2.7 Denkprozesse bei TDD; 2.8 Testen und testgetriebene Entwicklung im Vergleich; 2.9 Was wäre, wenn ...?; 2.10 Eins nach dem anderen!; 2.11 Die Länge einschränken; 2.12 Vokale fallen lassen; 2.13 Tests übersichtlich gestalten; 2.14 Querdenken beim Testen; 2.15 Zurück zum Thema; 2.16 Refactoring zu Funktionen mit nur je einer Aufgabe; 2.17 Der letzte Schliff; 2.18 Welche Tests fehlen noch?; 2.19 Unsere Lösung.
- 2.20 Die Soundex-Klasse2.21 Teardown; 3 Testgetriebene Entwicklung: Grundlagen; 3.1 Setup; 3.2 Unit Tests und Grundlagen von TDD; 3.2.1 Gliederung und Ausführung von Unit Tests; 3.2.2 Einheiten für die testgetriebene Entwicklung; 3.3 Der TDD-Zyklus: Rot
- Grün
- Refactoring; 3.3.1 Denkprozesse bei TDD; 3.4 Die drei Regelnˆ von TDD; 3.5 Verfrühtes Bestehen von Tests; 3.5.1 Der falsche Test für den Code; 3.5.2 Der falsche Code für den Test; 3.5.3 Ungünstige Testspezifikation; 3.5.4 Ungültige Annahmen über das System; 3.5.5 Suboptimale Testreihenfolgeˆˆ; 3.5.6 Verlinkter Produktionscode
- 3.5.7 Übercodierung3.5.8 Tests zur Absicherungˆˆ; 3.5.9 Innehalten und Nachdenken; 3.6 Die richtige Einstellung für den erfolgreichen Einsatzˆ von TDDˆ; 3.6.1 Schrittweises Vorgehen; 3.6.2 Verhalten statt Methoden testen; 3.6.3 Tests zur Beschreibung des Verhaltens verwenden; 3.6.4 Möglichst einfach halten; 3.6.5 Sich an den Zyklus halten; 3.7 Techniken für den Erfolg; 3.7.1 Was ist der nächste Test?; 3.7.2 Eine Obergrenze von 10 Minuten; 3.7.3 Fehler; 3.7.4 Tests deaktivieren; 3.8 Teardown; 4 Tests konstruieren; 4.1 Setup; 4.2 Aufbau; 4.2.1 Gliederung in Dateien; 4.2.2 Fixtures
- 4.2.3 Setup und Teardown4.2.4 »Arrange-Act-Assert«ˆ / »Given-When-Then«ˆ; 4.3 Schnelle Testsˆ, langsame Testsˆ, Filterˆˆ und Suitenˆˆ; 4.3.1 Eine Teilmenge der Tests ausführen; 4.4 Assertions (Zusicherungen); 4.4.1 Zusicherungen in klassischer Form; 4.4.2 Hamcrestˆ-Assertions; 4.4.3 Die richtige Zusicherung auswählen; 4.4.4 Fließkommazahlen vergleichen; 4.4.5 Ausnahmebasierte Tests; 4.5 Private Daten untersuchen; 4.5.1 Private Daten; 4.5.2 Privates Verhalten; 4.6 Testen und testgetriebene Entwicklung im Vergleich: Parametrisierte Tests und andere Spielere...; 4.6.1 Parametrisierte Tests