Ответ 1
Получил ответ, это не могло быть проще (этот пользователь сформулировал мой вопрос намного лучше и сжато:)
Как вывести переменную в тест rspec?
короткий ответ, используйте довольно печать:
pp пользователь
Я новичок в тестировании и имею проблемы с отладкой, как обычно, в модели или контроллере.
Я создал пользователя из factory (используя FactoryGirl, если это имеет значение), и я уверен, что метод create не работает из-за проверки при сохранении. Однако мне бы хотелось знать, как отлаживать модель, созданную во время тестирования.
Я пробовал:
user.inspect
puts user
raise user.to_yaml
(Последний работает, но останавливает выполнение остальных моих тестов и не показывает ошибок проверки - это только доказывает существование или отсутствие модели, которую я пытался создать.)
Помимо повышения модели в качестве ошибки, во время тестирования нет отладочного вывода, и единственное, что мне удалось сделать, это записать журнал для моей тестовой БД и посмотреть, что там происходит, но кажется неуклюжим в лучшем случае. Какие методы вы предложите для выполнения того, что мне нужно?
Спасибо за любое направление
Получил ответ, это не могло быть проще (этот пользователь сформулировал мой вопрос намного лучше и сжато:)
Как вывести переменную в тест rspec?
короткий ответ, используйте довольно печать:
pp пользователь
Checkout plymouth: https://github.com/banister/plymouth
Он работает с PRY, чтобы дать вам хороший интерфейс REPL и отладки при неудачном тестировании. Я использовал его в некоторых проектах и нашел его очень удобным для неясных проблем в тестах.
Вы всегда можете открыть сеанс pry
, добавив binding.pry
к вашему тесту. Таким образом, вы можете получить доступ к тому, что доступно в точном месте теста (и в других местах, если это необходимо). Дополнительная информация о добавлении pry
в Rails в официальный Pry wiki