Dein Code ist sicher und Seiteneffekte hast du im Griff. Mache Änderungen nur direkt am Live-System. Das spart Kosten und ist schnell. Testumgebungen, Qualitätssicherung und Staging sind etwas für Hipster, die zu viel Zeit und Geld haben.
Obwohl die Meldungen über (Kunden-) Datenverluste immer häufiger durch die Medien gehen, ist das Thema Testen immer noch ein Stiefkind. Software wird ungeprüft auf Kunden losgelassen. Geräte versagen während der Inbetriebnahme in ihren Kernfunktionen. Prozesse erzielen nicht annähernd das gewünschte Ergebnis. Die Auswirkungen von Fehlern im produktiven Betrieb sind in der Regel nicht abschätzbar. Der Aufwand zum Testen ist hingegen kalkulierbar. Warum also etwas Kalkulierbares gegen etwas Unkalkulierbares eintauschen? Tests können automatisiert werden und müssen Bestandteil eines jeden Prozesses sein. Dabei darf nicht nur die eigentliche Funktion getestet werden, sondern die neue Funktion muss auch in ihrem letztendlichen Umfeld getestet werden. Diese so genannten Integrationstests sind nicht nur bei Software wichtig. Nur weil eine Methode oder eine Lösung irgendwo erfolgreich eingesetzt wurde, bedeutet das nicht, dass diese unverändert und ungetestet in einem anderen Umfeld erfolgreich eingesetzt werden kann. Wichtig beim Testen ist, dass das erwartete Ergebnis vorher definiert und nicht der Test an das Ergebnis angepasst wird.
Da im Netz und in der Literatur das Thema ausreichend beschrieben ist, geben wir nur den einen Tipp:
- Immer testen, testen, testen.
Testen ist in jedem Fall billiger als hinterher die Scherben zusammenzufegen. Lernen kannst du auch aus fehlgeschlagenen Tests. Lehrgeld, welches du zahlen musst, weil du vorsätzlich auf das Testen verzichtet hast, ist unnötig.
Zurück zur Übersicht – 23 Wege, um eine (agile) Transformation an die Wand zu fahren.