Wenn ich in Eclipse ein Java-Programm im Debug-Modus ohne Haltepunkte ausführe und die JVM eine NullPointerException trifft, wird Eclipse die betreffende Codezeile hervorheben und die lokalen Variablen anzeigen. Die Ausführung wird angehalten. Ich kann Code über die Registerkarte Anzeige auswerten und so weiter.
Wenn ich jedoch einen JUnit-Test im Debug-Modus durchführe und der Jvm eine NullPointerException trifft, wird der Jvm nicht angehalten und ich habe keine Möglichkeit, die lokalen Variablen anzuzeigen.
Ist es möglich, JUnit-Tests auszuführen, damit die JVM automatisch anhält, wenn ich eine NullPointerException störe, ohne Haltepunkte zu verwenden?
Bearbeiten: Verwenden von JUnit 4 und Juno
Eclipse stoppt, wenn die geworfene Ausnahme nicht erfasst wird und Sie dann aus main () aussteigen würden. Wenn Sie jedoch mit dem JUnit-Framework arbeiten, werden alle Ausnahmen von JUnit abgefangen, sodass Eclipse nicht angehalten wird.
Zwei Lösungen kommen in den Sinn:
Doppelklicken Sie auf Haltepunkt setzen
Verwenden Sie den Debug-Modus, um in Eclipse auszuführen
Bewegen Sie die Maus über diese Codezeile und klicken Sie auf step over
oder f6
.
Sie können es auf der Registerkarte "JUnit" sehen. Wenn Sie auf die fehlerhafte Zeile doppelklicken, wechseln Sie zu der Stelle, an der die Nullzeigerausnahme aufgetreten ist.
Java.lang.NullPointerException <--First line of the error
at.com.myProject.MyClass.myMethod(MyClass.Java:theLineOfMyCode) <-- the line that you should double-click
Nachdem Sie dies getan haben, werden Sie in die Fehlerzeile weitergeleitet.