Выполнение шага входа в систему перед наброском сценария в cucumber

Я использую огурец с webrat / mechanize для тестирования сайта PHP и пытаюсь повысить скорость выполнения тестов, избегая ненужных шагов.

Я хочу использовать схему сценария, чтобы проверить доступность / защиту целого ряда страниц в зависимости от пользователя, вошедшего в систему:

Scenario Outline: Check page access is secure
  Given I am logged in as "<user>"
    And I am on <page>
  Then I should see "<message>"
Examples:
  |user  |page      |message                |
  |admin |home page |Welcome to my site     |
  |admin |admin page|Site administration    |
  |editor|home page |Welcome to my site     |
  |editor|admin page|Access denied          |
  |guest |home page |Please login           |
  |guest |admin page|Access denied          |
  ...

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

I ' Интересно, есть ли способ выполнить шаг входа в систему один раз для каждой роли, а затем посещать каждую страницу по очереди без необходимости каждый раз входить в систему. то есть, запустите «войти, посетить 1, посетить 2, посетить 3» вместо «войти, посетить 1, войти, посетить 2, войти, посетить 3».

Я пытался использовать хуки и фон, но, похоже, не могу найти подход, который работает. Возможно ли это?

8
задан Jeff Atwood 4 August 2012 в 06:54
поделиться