Может ли rspec протестировать представление, чтобы убедиться, что синтаксис / хелперы представления не имеют ошибок? - PullRequest
0 голосов
/ 17 апреля 2011

Используя rspec, можно ли проверить представление, чтобы убедиться, что весь синтаксис в представлении не содержит ошибок?

Представления вызывают помощники, они могут ссылаться на имена контроллеров / действий, такие как controller => 'blah', action => 'show' и т. Д.

Если я переименую / удаляю контроллер, я хочу убедиться, что если мои представления ссылаются на них, у меня будет тест, который не пройдёт.

1 Ответ

0 голосов
/ 17 апреля 2011

Пара вещей:

1) Я бы не рекомендовал использовать :controller или :action в любом месте ваших просмотров, потому что помощники RESTful намного короче.Например:

:controller => :projects, :action => "show", :id => 1

против.

project_path(1)

2) Вместо того, чтобы проверять синтаксические ошибки таким образом, проводите надлежащие интеграционные тесты, которые проверяют ваше приложение, выполняя те же действия, что и пользователь.Обычно это обеспечивается RSpec + Capybara или Cucumber.


Теперь, когда у нас нет формальностей, вы можете изменить describe тестов вашего контроллера следующим образом:

 describe ProjectsController
   render_views

По умолчанию представления в тестах контроллера RSpec отключены, то есть они вообще не доступны .Поместив render_views в свои блоки describe (или context), вы включите эту опцию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...