Also Debugging hat in meinen Augen massiv an Wert verloren über die letzten Jahre / Jahrzehnte. Damals war es mit das Tool zur Fehlersuche als Entwickler, Aber mit den Unit Tests ist dies immer weiter in den Hintergrund getreten. Den Debugger nutze ich sehr selten. Es ist einfach ein zu zeitaufwändiges Tool. Man geht dann gewisse Stellen Schritt für Schritt durch und schaut sich die konkreten Werte in diversen Variablen an - das kostet enorm Zeit. Und meist ist das Resultat nur, dass bei Unit Tests schlicht geschlampt wurde und ein Case nicht beachtet wurde. Seltener, dass die generelle Logik / Spezifikation falsch verstanden wurde, Das ist zumindest meine Erfahrung, weshalb der Debugger überbewertet ist.
Und wenn es dazu kommt, dass der Debugger genutzt werden muss: Dann mache ich dies auch nur zusammen mit Tests. Das bedeutet ich starte nicht die Anwendung, um dann zu dem Punkt zu navigieren, wo ich dann debuggen möchte. Statt dessen schaffe ich mir die Daten einmalig in Code und nutze dann den Aufruf. Das ist dann natürlich kein Unit Test mehr, da keine Unit mehr getestet wird sondern ein ganzes Modul. Das vereinfacht das Starten des Debuggers deutlich. Und hat den Vorteil, dass eine Fehlersituation einmal nachgestellt wurde. Den Test lasse ich dann auch drin, denn nichts in peinlicher, als wenn ein Problem (evtl. in anderer Ausprägung) erneut auftritt. Das ist Kunden kaum zu vermitteln.
Das nur als kleiner Hinweis. Ehe man zu viel Zeit mit dem Debugger zubringt macht es evtl. mehr Sinn, mehr Zeit in das Schreiben von Tests zu investieren.