Как вы используете огурец с Зевсом?

Когда я запускаю Зевс, он не предлагает zeus cucumber как одна из возможных команд. Другие, кажется, получают это по умолчанию; По крайней мере, я видел пару рецензий, которые показывают результат работы zeus start в том числе zeus cucumberи они ничего не говорят о том, что они были особенными или требовали дополнительной настройки.

Я даже не знаю, с чего начать устранять это; Я гуглил и искал здесь "используйте огурец с Зевсом". Я не получаю никаких обсуждений настройки. Единственные результаты, которые я получаю, получены от людей, которые, как представляется, считают само собой разумеющимся, что он должен быть там, и изучают проблемы, связанные с его неправильной работой.

1 ответ

Решение

Вы должны использовать этот файл пользовательского плана от Zeus. Сохранить как custom_plan.rb в корне вашего приложения:

require 'zeus/rails'                   

# 1. Add the cucumber methods (below) to your custom plan (or take this file if
# you don't have an existing custom_plan).
#
# 2. Add the following line to the test_environment section of your zeus.json:
#
#   "cucumber_environment": {"cucumber": []}

class CucumberPlan < Zeus::Rails         
  def cucumber_environment
    ::Rails.env = ENV['RAILS_ENV'] = 'test'
    require 'cucumber/rspec/disable_option_parser'
    require 'cucumber/cli/main'
    @cucumber_runtime = Cucumber::Runtime.new
  end

  def cucumber(argv=ARGV)
    cucumber_main = Cucumber::Cli::Main.new(argv.dup)
    had_failures = cucumber_main.execute!(@cucumber_runtime)
    exit_code = had_failures ? 1 : 0
    exit exit_code
  end
end

Zeus.plan = CucumberPlan.new
Другие вопросы по тегам