Когда я создал новый проект рельсы 3.1.3 и написать историю огурца с Webrat кода, как это:методы Неопределенное Webrat в Огурец
response.should contain("abc")
и я бегу rake cucumber
, я получаю:
undefined method `contain' for #<Cucumber::Rails::World:0x00000003d2c578> (NoMethodError)
Я считаю, что либо огурцы, либо Webrat или Rails сломаны, потому что я ничего особенного не делал и придерживался документации.
Следующие шаги воспроизвести ошибку:
rvm 1.9.2
rails new testapp -d mysql
cd testapp
- {{Edit database.yml}}
rake db:create
rake db:migrate
gem install cucumber-rails
gem install webrat
gem install database_cleaner
- {{Edit Gemfile включить 'огурца рельсы', 'Webrat' и 'database_cleaner' без номера версии}}
bundle install
rails g cucumber:install
rails g controller genres index
- добавить "resources: genres" to routes.rb
- {{рельсы s и http://localhost:3000/genres работы в настоящее время}}
- Создать /features/create_movie.feature с содержимым:
Feature: Create movie
Description
Scenario: Create a movie in genre
Given a genre named Comedy
When I create a movie Caddyshack in the Comedy genre
Then Caddyshack should be in the Comedy genre
- Создание /features/step_definitions/movie_steps.rb с содержимым:
Given /^a genre named Comedy$/ do end
When /^I create a movie Caddyshack in the Comedy genre$/ do
end
Then /^Caddyshack should be in the Comedy genre$/ do
visit genres_path
response.should contain("abc")
end
rake cucumber
- Не удалось выполнить приведенную выше ошибку.
- различные предложения в Интернет не работает (например Undefined webrat methods in cucumber step_definitions)
- Мои версии:
рельсы 3.1.3
огурца 1.1.4
огурца рельсы 1.2.1
Webrat 0.7. 3
стойка 1.3.5
rake 0.9.2.2
Любые подсказки о том, как разрешить это?