Я хочу повторно использовать некоторые шаги Cucumber, но не могу найти правильный способ.
Я хочу написать такой шаг:
Given /^I login with (.*) credentials$/ |type|
# do stuff with type being one of "invalid" or "valid"
end
Но затем сделайте еще один шаг, например:
Given /^I login successfully$
# call "Given I login with valid credentials"
end
Поэтому при тестировании аутентификации пользователя я могу использовать первое, но в большинстве других мест я могу использовать второе, и на самом деле мне не нужно воспроизводить код.
Есть ли способ вызвать этот другой шаг, или я просто помещаю логику во вспомогательный метод и вызываю указанный метод из каждой задачи (в основном рефакторинг извлечения метода, который после прочтения моего вопроса заставляет меня поверить, что на самом деле лучший способ тем не мение)?
do
необходимое для запускаdo...end
блока, в определении шага Ruby. На самом деле это необходимо.