Cucumber — «У вас нет каталога «функции». Пожалуйста, создайте его, чтобы начать» сообщение

#ruby #cucumber

#ruby #cucumber

Вопрос:

я изучаю cucumber, и у меня возникли некоторые проблемы. Я создал функцию в этом местоположении / Documents / calculator / features / adding .возможности

И когда я выполняю «cucumber» в папке / features, я получаю следующую ошибку / предупреждение:

 me@my-pc:~/Documents/calculator/features$ cucumber
/var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/ast/feature_element.rb:52: warning: circular argument reference - name
Warning: you should require 'minitest/autorun' instead.
Warning: or add 'gem "minitest"' before 'require "minitest/autorun"'
From:
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/core_ext/disable_mini_and_test_unit_autorun.rb:3:in `<top (required)>'
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/runtime.rb:21:in `initialize'
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/cli/main.rb:40:in `new'
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/cli/main.rb:40:in `execute!'
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/cli/main.rb:20:in `execute'
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/bin/cucumber:14:in `<top (required)>'
  /usr/local/bin/cucumber:23:in `load'
  /usr/local/bin/cucumber:23:in `<main>'
You don't have a 'features' directory.  Please create one to get started.
See http://cukes.info/ for more information.
  

Но если я вручную укажу путь к функциям, это сработает (хотя предупреждение не исчезает)

  me@my-pc:~/Documents/calculator/features$ cucumber ~/Documents/calculator/features/adding.features
/var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/ast/feature_element.rb:52: warning: circular argument reference - name
Warning: you should require 'minitest/autorun' instead.
Warning: or add 'gem "minitest"' before 'require "minitest/autorun"'
From:
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/core_ext/disable_mini_and_test_unit_autorun.rb:3:in `<top (required)>'
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/runtime.rb:21:in `initialize'
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/cli/main.rb:40:in `new'
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/cli/main.rb:40:in `execute!'
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/lib/cucumber/cli/main.rb:20:in `execute'
  /var/lib/gems/2.5.0/gems/cucumber-1.1.3/bin/cucumber:14:in `<top (required)>'
  /usr/local/bin/cucumber:23:in `load'
  /usr/local/bin/cucumber:23:in `<main>'
Feature: Adding

  Screnario: Add two numbers
  Given the input "2 2"
  When the calculator is run 
  Then the output should be "4"

0 scenarios
0 steps
0m0.000s
  

Кто-нибудь знает, что происходит?

Комментарии:

1. Похоже, проблема с вашим классом runner. Не могли бы вы поделиться им с нами?

2. где я могу его найти?

3. запустите cucumber из папки calculator, затем он сможет найти функции

Ответ №1:

И когда я выполняю «cucumber» в папке / features

Cucumber необходимо запускать из корня вашего пакета автоматизации. В вашем случае корень ~/Documents/calculator

Шаги:

  1. cd ~/Documents/calculator
  2. cucumber features

Попробуйте эту ссылку для быстрого руководства, чтобы начать работу с Cucumber

Ответ №2:

У меня была та же проблема. Я создал папку «функции» в корне моего приложения и поместил в нее свой файл функций. Снова запустите «cucumber», и он нашел папку функций, которую я только что создал.