2010-05-28 7 views
3

Я пробовал capybara с огурцом, чтобы получить лучшее покрытие для проверки javascript. У меня есть много шагов, которые проверяют или использовать вещи из тестовых хелперов Rails интеграции, например:Альтернатива для присваивания() в огурцах с Капибарой?

assigns(:current_user).should_not be_nil 

Независимо от того, как я называю assigns, даже если я говорю что-то вроде p assigns ошибки это с:

undefined method `template' for nil:NilClass (NoMethodError) 

Итак, похоже, я больше не могу этого делать. Есть ли альтернатива интроспекции того, что происходит в контроллере, или, может быть, какой-то способ, по крайней мере, выполнить эти шаги таким образом, чтобы у меня было тестовое содержимое интеграции?

ответ

5

К сожалению, нет. Capybara тестирует приложения в стойке и не имеет возможности общаться с тем, что находится внутри этого приложения стойки, кроме как через стандартный интерфейс стойки (т. Е. Выдает HTTP-запросы). Все, что происходит внутри приложения стойки, невидимо для Capybara.