Ich habe JUnit Tests, die gut funktionieren. Mockito wurde zu meinem Build hinzugefügt und ich versuche, einen Breakpoint in meinen JUnit-Test zu setzen, der Mockito verwendet, um einige der öffentlichen Methoden auszuprobieren. Wenn ich versuche, den Debugger für die Klasse auszuführen, erhalte ich den Fehler "Kann den Haltepunkt in XXX aufgrund fehlender Zeilennummernattribute nicht installieren. Ändern Sie die Compileroptionen, um Zeilennummernattribute zu generieren." Ich habe meinen Compiler überprüft und ich generiere Zeilennummern ausgewählt.Kann Mockito/JUnit-Code in Eclipse nicht debuggen, funktioniert gut mit nur JUnit
Antwort
Wenn es nur passiert, wenn Sie Mockito verwenden, dann liegt es vielleicht daran, dass Mockito ohne Debugger-Unterstützung kompiliert wurde?
Überprüfen Sie außerdem, ob Sie die gleichen Compilereinstellungen für Ihre Testklassen wie für Ihren normalen Code haben.
Ich denke @ Albert-t-Wong sagte, dass der dynamische (generierte) Scheincode keine Debug-Informationen hatte, nein, dass er Mockitos Quellcode nicht debuggen konnte. – cleberz
Versuchen Sie, indem Sie Ihre Haltepunkte entfernen und erneut hinzufügen. Möglicherweise verweist ein aktueller Haltepunkt nur auf eine alte Version einer Klasse. Nur das!
Vielleicht this post in the Mockito group kann Ihnen helfen.
Ich habe die gleichen Nachrichten (Eclipse Luna).
Trotz der großen Anzahl von Fehlermeldungen funktioniert das Debuggen immer noch, wenn der Debugger Ihren Haltepunkt erreicht. Sie müssen nur auf "OK" klicken oder diese Nachrichten deaktivieren.
Ich denke, das Problem entsteht durch das Setzen von Breakpoints auf eine erweiterte Klasse (Mockito erweitert wahrscheinlich die mokierten Klassen dynamisch) und Eclipse kann den Quellcode nicht aufspüren.
neben dieser Frage war alt ich hatte das gleiche Problem heute und die Lösung war recht einfach, aber dauerte einige Zeit, um es herauszufinden. Also das kann hilfreich sein, wer hier stolpert.
Ich hatte gerade einen alten Breakpoint gesetzt und einer von ihnen zeigte auf einen veränderten Code, so dass die aufgezeichnete Haltepunktposition nicht mehr gut war.
Mein Rat ist zu versuchen, alle störenden Haltepunkte zu entfernen und sie auf dem aktuellen Code neu zu installieren. Nach einem sauberen Build, nur um sicher zu sein, auf die neueste Binärdatei zu zeigen. :)
Die Ausnahme, die Sie sehen, wird durch den Versuch verursacht, dynamisch generierte leere Mock-Methoden zu debuggen, die von der Funktion mock() erstellt wurden. Aus Ihrer Frage sieht es so aus, als wollten Sie tatsächlich partielle Mocks statt voller Mocks verwenden, wobei nur einige Methoden verspottet werden und die verbleibenden Aufrufe an die reale Implementierung delegiert werden.
Teil Mocks zu erstellen, sollten Sie die Spion() Methode anstelle der Mock() Methode werden. So verwenden
MyClass myMock = spy(new MyClass());
statt
MyClass myMock = mock(MyClass.class);
- 1. Eclipse Debuggen Android funktioniert nicht
- 2. JUnit + Maven + Eclipse: Warum @BeforeClass nicht funktioniert?
- 3. Warum JUnit 4.11 funktioniert nicht in Ant-Build-Datei, aber JUnit 4.8.2 funktioniert gut?
- 4. Groovy Eclipse kann nicht JUnit-Tests
- 5. Kann C++ mit Qt-Projekten in Eclipse nicht debuggen
- 6. "Argline" Argument funktioniert nicht in Maven Surefire Eclipse JUnit
- 7. jenkins debuggen mit eclipse
- 8. kann nur debuggen nicht Xamarin App mit System.Data.SqlClient Klasse verwendet
- 9. Eclipse CDT kann nicht debuggen mit gdb auf Mac
- 10. C# -Testframework, das wie JUnit in Eclipse funktioniert?
- 11. Eclipse JUnit 5 Unterstützung
- 12. Quicksort funktioniert nicht gut
- 13. Break on Exception in Eclipse mit jUnit
- 14. Spracherkennung funktioniert nicht gut
- 15. Wrapping JUnit-Tests (in Eclipse)
- 16. Bestätigungsdialog funktioniert nicht gut
- 17. JUnit stoppt nicht an Haltepunkten in Eclipse (mit JDK 1.6.0.20)
- 18. JUnit Eclipse Plugin?
- 19. Eclipse Debugger nicht mit Macht Regel in Junit Arbeits
- 20. Wie kann ich einen JUnit RunListener in Eclipse verwenden?
- 21. JUnit - einige meiner Klassenmethoden erscheinen nicht Eclipse JUnit Wizard?
- 22. Wie JUnit-Test in Eclipse
- 23. array_key_exists funktioniert nicht gut
- 24. JUnit Bericht über Eclipse
- 25. Externes Konsolenprogramm mit Eclipse debuggen
- 26. JUnit Eclipse View
- 27. crontab funktioniert nicht gut?
- 28. Passing JUnit Kommandozeilenparameter in Eclipse
- 29. Debuggen Sie nur Ihre Android-Quelle in Eclipse
- 30. Gut Eclipse-Plugin-Test-Tool
, welche Version von Mockito verwenden Sie? – iwein