Доступ Rails Cucumber к переменным контроллера

У меня есть контроллер, который определяет переменные @projects, которые будут отображаться в представлении.

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

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

Спасибо.


person miguelfteixeira    schedule 29.07.2010    source источник


Ответы (1)


Обычно вы справляетесь с этим в Cucumber, напрямую проверяя вывод.

So:

  • Даны X проектов
  • Когда я просматриваю страницу проекта N
  • Тогда я должен увидеть проект А
  • И я не должен видеть проект Б

Вам не нужно обращаться к переменным контроллера из функций Cucumber, поскольку Cucumber предназначен для имитации работы ваших пользователей на вашем сайте, и у пользователей также нет прямого доступа к контроллерам.

person Toby Hede    schedule 29.07.2010
comment
Итак, я должен сказать название (например) 5 проектов, которые должны появиться на странице? Я подумал, что это может быть более динамично, потому что проекты создаются фабрикой. - person miguelfteixeira; 29.07.2010
comment
Вы можете сделать его немного более динамичным, ища элементы на странице. Вы можете сделать несколько довольно умных задач, используя синтаксический анализ html и регулярное выражение ... Итак, я вижу, что 5 проектов на странице могут сопоставляться с чем-то, ищущим определенные элементы html. - person Toby Hede; 30.07.2010
comment
Если проекты создаются фабрикой, вы должны иметь доступ к своим определениям шагов. Поэтому сохраните переменную на данном шаге, и вы сможете получить доступ к переменной в последующих шагах, когда\затем - person AlistairH; 02.08.2010