0
require 'spec_helper'

describe StudentsController do
  fixtures :all

  context "#profile" do
    let(:school) { Factory.create(:school_2) }

    before do
      session[:email] = user.email
      session[:user_id] = user.id
    end

    it "should assign the user to @user" do
      User.stub(:find).with(user.id).and_return(user)
      get :profile
      assigns[:user].should eql(user)
    end
  end
end

after フックでエラーが発生しました:

NoMethodError: undefined method `original_path_set' for nil:NilClass
occurred at /home/qbadmin/.rvm/gems/ruby-1.9.3-p194/gems/rspec-rails-2.13.1/lib/rspec/rails/view_rendering.rb:121:in `block (2 levels) in <module:ViewRendering>'

rspec specこれは、コマンド ラインから実行したときに発生したエラーです。問題が何であるかを理解するのを手伝ってくれる人はいますか?

Gemfile で指定した RSpec バージョンは次のとおりです。

gem 'rspec', '~> 2.13',
gem 'rspec-rails', '~> 2.13'

前もって感謝します。

4

2 に答える 2

-1

rspec が正しく機能するためには、gemfile に次のようなものが必要です。

group :test, :development do
  gem 'rspec-rails', '~> 2.13.2'
end

また、 database_cleaner gemをご覧になることをお勧めします。

group :test do
  gem 'database_cleaner', '~> 1.0.1'
end

あなたの問題に関して、少し調査した結果、rspec がスペック ファイルのパスを取得する方法に問題があるようです。上記の仕様が以下のファイルに書かれていることを確認できますか?

spec/controllers/students_controller_spec.rb

コントローラーのコードをコピーして貼り付けてください。

于 2013-06-27T07:26:50.633 に答える