Często, gdy test kończy się niepowodzeniem, spędzam całkiem sporo czasu, próbując dowiedzieć się, co spowodowało jego niepowodzenie. Byłoby użyteczne, gdyby RSpec mógł uruchomić debugger w języku Ruby, gdy test się nie powiedzie, tak żebym mógł natychmiast sprawdzić zmienne lokalne, aby poznać przyczynę.Uruchom debugger ruby, jeśli test rspec nie powiedzie się
Prace wokół używam teraz wygląda mniej więcej tak:
# withing some test
debugger unless some_variable.nil?
expect(some_variable).to be_nil
Jednak takie podejście jest uciążliwe, bo najpierw czekać na test się nie powiedzie, a następnie dodać linię debugger, Fix problem, a następnie trzeba usunąć linię debuggera, podczas gdy ja chcę, aby działała bardziej jak gdb
, która ma możliwość uruchomienia w momencie trafienia wyjątku, bez konieczności pieprzenia bazy kodu z instrukcjami debugger
.
Edytuj: Próbowałem Plymouth. Nie zadziałało to dla mnie wystarczająco dobrze. Również historia rozwoju wydaje się wskazywać, że nie jest to bardzo dobrze zachowany klejnot, więc wolałbym na nim nie polegać.
Aktualizacja: Wypróbowałem pry-rescue
i znalazłem go w porządku. Jednak często używam zeus i zastanawiałem się, czy istnieje sposób, aby zadziałało to z pry-rescue
.
dzięki - dam ci szansę. – Vighnesh
Czy istnieje sposób, aby to działało ze 'zeus'? – Vighnesh
Próbowałem go z najnowszą wersją zeus i ratowniczą, nie działa – 23tux