Cucumber: автоматическое создание файла шага? - PullRequest
4 голосов
/ 13 июля 2009

Когда я запускаю огурец, он отображает возможные шаги, которые я должен определить, пример из книги RSpec:

1 scenario (1 undefined)
4 steps (4 undefined)
0m0.001s
You can implement step definitions for undefined steps with these snippets:
Given /^I am not yet playing$/ do
  pending
end
When /^I start a new game$/ do
  pending
end
Then /^the game should say “Welcome to CodeBreaker”$/ do
  pending
end
Then /^the game should say “Enter guess:”$/ do
  pending
end

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

Ответы [ 6 ]

3 голосов
/ 11 декабря 2009

Intellij Idea или RubyIDE делает именно то, что вы просите:

  • Обнаруживает пропущенные определения шагов
  • Создает отсутствующие определения шагов в новом файле (вы выбираете имя файла) или в одном из существующих файлов определения шагов
  • Основные параметры согласованного шага

см. http://i48.tinypic.com/10r63o4.gif для пошагового изображения

Наслаждайтесь

3 голосов
/ 14 августа 2009

Как сказал Кевин, Cucumber должен знать имя файла, чтобы вставить его, и нет хороших значений по умолчанию, кроме использования того же имени файла, что и у файла функций. И это то, что я считаю антипаттерном: http://wiki.github.com/aslakhellesoy/cucumber/feature-coupled-steps-antipattern

3 голосов
/ 13 июля 2009

Огурец не предлагает эту функцию. Возможно, потому, что вам нужно будет указать ему, куда поместить файл определений шагов и как его назвать.

1 голос
/ 23 июля 2009

Существует возможность, что такая функция может быть полезной, но, как говорит Кевин, в настоящее время ее не существует. Но это может также стать довольно грязным, довольно быстро.

Может быть, вы уже делаете это, но ничто не мешает вам вырезать и вставлять вывод прямо в ваш текстовый редактор, или даже направлять вывод прямо в ваш текстовый редактор, если вы так склонны. Тогда, по крайней мере, вы получите большую часть пути, запретив создание файла и присвоив ему имя.

0 голосов
/ 08 января 2018

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

1) используя путь

bundle exec cucumber {PATH}
note path would start with features/....
for example 
features/users/login.feature

1) с использованием тегов

bundle exec cucumber --tags=@{TAG}
note tag should be above your scenario in the steps file
for example 
  @TAG
   Scenario:

И у вас будут предложенные шаги в консоли с ожидающим статусом

0 голосов
/ 24 апреля 2014

попробуйте https://github.com/unxusr/kiwi, он автоматически сгенерирует ваш файл функций и создаст для вас файл определений шагов, а вы просто заполните шаги с помощью кода. В более поздней версии напишет код шагов и автоматически выполнит тест всего этого

...