Debugging - intelligente Breakpoints

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
barfoos
User
Beiträge: 25
Registriert: Dienstag 29. Juli 2008, 09:46

Hallo.

Immer wieder passiert es, dass ich auf der Suche nach einem Fehler fast verzweifle. Angenommen, mein Programm wirft eine Exception an einer Stelle und bricht daraufhin ab. Jetzt setze ich einen Breakpoint kurz vor der Stelle. Dann muss ich aber feststellen, dass der Absturz nicht beim ersten Durchlauf durch die Stelle zustande kommt. Wenn ich Pech habe, ist es erst beim 100sten Durchlauf soweit. Was ich mir wünsche, wäre eine Möglichkeit
schnell und einfach in Eclipse, zu sagen, dass er an der Stelle anhalten soll, falls dort eine Exception entsteht. Dann hätte ich den kompletten Funktionsaufrufstack zur Hand, der zum werfen der Exceptions geführt hat, und könnte mir jeweils die Variablenbelegungen ansehen.

Mein workaround sieht im Moment immer so aus, dass ich mir die betreffende Zeile in einen try-except-block einpacke und dann einen break-point im except-block setze. Dazu muss ich aber jedesmal den Programmcode ändern.

Versteht ihr was ich meine? Übersehe ich was offensichtliches?

danke und gruß
barfoos
BlackJack

Der Debugger in Eclipse springt nicht automatisch an wenn eine nicht behandelte Ausnahme bis nach oben "durchschlägt"!? Das ist ja schwach. Also `winpdb` fragt dann nach, ob man die Ausnahme analysieren möchte.
barfoos
User
Beiträge: 25
Registriert: Dienstag 29. Juli 2008, 09:46

BlackJack hat geschrieben:Der Debugger in Eclipse springt nicht automatisch an wenn eine nicht behandelte Ausnahme bis nach oben "durchschlägt"!? Das ist ja schwach. Also `winpdb` fragt dann nach, ob man die Ausnahme analysieren möchte.
Werd ich mir anschauen. Danke.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

BlackJack hat geschrieben:Also `winpdb` fragt dann nach, ob man die Ausnahme analysieren möchte.
Der ganz normale ``pdb`` macht das auch, und dort kann man sich dann durch die Frames nach unten und nach oben hangeln. Allerdings sind die Ausgaben nicht farbig, was esetwas unübersichtlich macht.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
barfoos
User
Beiträge: 25
Registriert: Dienstag 29. Juli 2008, 09:46

Lässt sich denn einer der beiden debugger in PyDev integrieren?

Nachtrag: sieht so aus, als sei ich nicht der einzige, der sich das wünscht: http://sourceforge.net/tracker/index.ph ... tid=577332
Antworten