Wie frühzeitig erkennen, ob unser Code das tut was wir erwarten, und Fehler aufspüren, bevor sie zu einem echten Problem werden ?
Wir sollten test schreiben
Wie software dauerhaft stabil und zuverlässig zu halten, gleichzeitig Entwicklungszeit und Wartungszeit senken ?
Automasierte Tests können uns dabei helfen
TDD Wie gartenbau
erst neue pflanzen einpflanzen, wenn alle anderen bereits gewässert und gedüngt sind
TDD
Was ist die Idee dahinter ?
Fast Feedback und Iterationen sind zentrale Aspekte Somit können wir schneller Kursänderungen und Fehleränderungen durchführen
Agile Teams beschleunigen hierbei Iterationsschleifen
Vergleiche Modul : Automasierte Softwareentwicklung
[[[[test]]]] driven development is a teechnique ...
TDD : 3 schritte
- Einen test für die nächste kleine funktionalität schreiben, die hinzugefügt werde nsoll
- Funktionalen Code schreiben, bis der test funktioniert
- Sowohl neuen als auch alten COde refaktorisieren, so dass es besser läuft
Anfangsschritt :
- Erstellung einer Liste von testfällen
- Einen dieser Tests auswählen, 3 Schritte auf ihn anwenden
- Wenn uns neue Tests einfallen, fügen wir sie zur Liste hinzu
Self Testing Code als Sicherheitsnetz Tests die wir auf Knopfdruck ausführen können Hiermit kann die Anzahl der Bugs, die wir in die produktionssoftware einabuen verkleinert werden födert eine Kultur der kontinuierlichen verbeserung
Mit Self-testing Tests können wir als “Bug-Detektor” benutzen