Debugging ist das gezielte Suchen und Beheben von Fehlern in einem Programm. Es beginnt mit der Frage, was genau falsch läuft, und endet erst, wenn die Ursache gefunden und beseitigt ist; ein verschwundenes Symptom allein genügt dafür nicht.
- Debugging
Die systematische Suche nach der Ursache eines Softwarefehlers und dessen Beseitigung.
Beispiel: „Beim Debugging zeigte sich, dass das Formular nur bei Umlauten im Namen scheiterte.“Auch: Fehlersuche. Das englische bug heißt Käfer; berühmt ist ein Eintrag von 1947 im Logbuch des Rechners Harvard Mark II, in das eine Motte als erster echter Bug eingeklebt wurde.
Verwandt: Debugger, das Werkzeug, das ein laufendes Programm anhält und seine Werte zeigt.
Wie Debugging abläuft
Zuerst den Fehler zuverlässig auslösen: Unter welchen Bedingungen tritt er auf, und unter welchen nicht? Dann den Bereich eingrenzen, Schritt für Schritt, bis die Stelle gefunden ist, an der das Verhalten vom erwarteten abweicht.
Ist die Ursache behoben, sichert ein Test ab, dass der Fehler nicht zurückkommt.
Werkzeuge für das Debugging
Im Browser die Entwicklerwerkzeuge mit Konsole, Netzwerkanalyse und einem eingebauten Debugger für JavaScript. In PHP Xdebug für Haltepunkte und in Laravel Hilfen wie dd(), das Werte ausgibt und das Programm anhält.
Auf dem Server sind Logs die wichtigste Quelle, weil sich dort Fehler nachlesen lassen, die bei Besuchern aufgetreten sind. Fehlerdienste wie Sentry sammeln sie und melden neue sofort.
Debugging mit KI
Sprachmodelle sind gute Partner bei der Fehlersuche. Sie lesen Fehlermeldungen und Stacktraces, schlagen Ursachen vor und erklären unbekannten Code. Am meisten helfen sie, wenn sie den betroffenen Code, die genaue Meldung und die Schritte zum Auslösen bekommen.
Die Prüfung bleibt beim Menschen: Ein Vorschlag, der das Symptom verschwinden lässt, hat die Ursache noch nicht unbedingt gefunden.