# Fehlersuche ## 1. Nachstellen Finde den kürzesten Weg, den Fehler auszulösen: ein Test, ein Befehl, eine Eingabe. Ohne verlässliches Nachstellen gibt es keine verlässliche Behebung. ## 2. Eingrenzen - Lies die vollständige Fehlermeldung und den Stacktrace, von unten nach oben. - Vergleiche mit einem Zustand, in dem es ging: anderer Commit, andere Eingabe, anderer Rechner. - Halbiere den Suchraum: Eingabe verkleinern, Schritte weglassen, Ausgaben an Zwischenstellen. ## 3. Ursache belegen Formuliere eine Vermutung und prüfe sie mit einem Experiment, bevor du etwas änderst. Eine Vermutung ist erst die Ursache, wenn sie das beobachtete Verhalten vollständig erklärt. ## 4. Beheben - Behebe die Ursache, nicht das Symptom. - Schreibe, wo möglich, zuerst einen Test, der den Fehler zeigt, und mache ihn dann grün. - Prüfe, ob derselbe Fehler an anderen Stellen steckt. ## Nicht - Mehrere Dinge auf einmal ändern. - Fehler unterdrücken, Tests abschalten oder Wartezeiten einbauen, ohne die Ursache zu kennen. - Nach dem zweiten erfolglosen Versuch weiterraten: dann zurück zu Schritt 2.