1

私の機能ファイル:

Feature: home page links

  Background: I am on the home page
    Given I am on the home page

  Scenario: I visit the about page
    When I follow "About"
    Then I should be on the about page

私のpaths.rbには、

when /the home\s?page/ then root_path

とレーキルートは次のようになります。

    root  /(.:format)         {:controller=>"home", :action=>"home"}

「bundleexeccucumber」を実行しようとすると、次のメッセージが表示されます。

undefined local variable or method `controller' for #<HomeController:0xb29583c> (ActionView::Template::Error)
<a lot of crap>
./features/step_definitions/web_steps.rb:16:in `/^(?:|I )am on (.+)$/'
features/home_page.feature:4:in `Given I am on the home page'

Failing Scenarios:
cucumber features/home_page.feature:6 # Scenario: I visit the about page

些細なテストですが、この失敗の調査をどこから始めればよいのかわかりません。何か案は?ありがとう。


また、私のGemfile:

source :rubygems

gem "rails", "~>3.0"
gem "haml", "~>3.0"

group :test do
  gem 'cucumber'
  gem 'cucumber-rails'
  gem 'nokogiri'
  gem 'webrat'
end

group :development do
  gem "rspec-rails", "~>2.0.pre"
  gem "heroku"
  gem "will_paginate", "~>3.0.pre2"
end
4

2 に答える 2

0

警告はもう見つかりませんが、カピバラの宝石は現在、CucumberonRails3での使用が推奨されていると思います。

さて、いくつかの検索の後、それはうまくいくかもしれませんが、ここのコメントを見てください。問題はあなたの問題とまったく同じではありませんが、関連している可能性があります。

于 2010-12-29T05:22:40.213 に答える
0

実は、私もかつて同じ問題を抱えていました。Cucumber が原因だと思っていましたが、よく見ると、エラーはあなたの見解にあるようです:ActionView::Template::Error

Cucumber は test データベースを使用します。ホームページにシードが必要な場合、シードはロードされません。

あなたの場合、controllerおそらく次のようなものを入力しているときに、誤解されたを書いたようですparams[controller]

于 2010-12-30T22:34:02.097 に答える