5

Guard を使用してスペックを実行すると、奇妙な問題が発生します。

Capybara の「機能」/「シナリオ」構文を使用する機能仕様を実行しています。私もSpringを使っています。

コンソールまたはrspec specGuardシェルで実行すると、すべて正常に動作します。しかし、監視された仕様が Guard によって自動的に実行されると、次のエラーが発生します。spring rspecrspec

/spec/features/navigation_spec.rb:1:in <top (required)>': undefined methodfeature' for main:Object (NoMethodError)

この特定のコンテキストでのみカピバラの構文を取り上げないのはなぜですか?

関連するコードは次のとおりです。

ガードファイル

guard :rspec, :spring => true do
    watch(%r{^spec/.+_spec\.rb$})
end

仕様/機能/navigation_spec.rb

feature "navigation" do
    context "When on the home page" do
        before { visit "/" }

        scenario "I should see the navigation header" do
            expect(page).to have_selector("div.navigation")
        end
    end
end

spec/spec_helper.rb

require 'capybara/rspec'
4

3 に答える 3

0

どのようにガードを呼び出していますか?bundle exec guard物事を開始するためにあなたがする必要があるように思えます。また、間違った環境で実行されている可能性もあります (可能性は低いですが、一見の価値があります)。

于 2013-10-31T21:00:43.043 に答える