18839


rspecを実行しようとすると以下のエラーが出ます

[code]

    /Users/(user_name)/rails_projects/(project_name)/spec/models/event_spec.rb:3:in `<top (required)>': uninitialized constant Event (NameError)
    
[/code]

以下`spec/models/event_spec.rb`です。

[code]

    require 'spec_helper'
    
    describe Event do
      descrive '#name' do
        context '空白の時' do
          it 'valid でないこと' do
            event = Event.new(name: '')
            event.valid?
            expect(event.errors[:name]).to be_present
          end
        end
      end
    end
    
[/code]

NoNameErrorと出ていますが、Eventモデルは作成済みです。  
`rails_helper.rb`,`spec_helper.rb`共にデフォルトの状態ですが、何か追加で記述する必要があるのでしょうか。よろしくお願いいたします。


CC BY-SA 3.0
2015-11-15T04:16:21.647
18835
2015-11-15T06:48:08.560
13210
question
ruby-on-rails rspec
rspec uninitialized constant Event (NameError)


rspec-rails 3系をお使いであることを前提に回答します。

`spec/models/event_spec.rb`の1行目にある  
`require 'spec_helper'`を`require 'rails_helper'`とすれば動くと思います。  
rspec-rails 3から`spec_helper`の代りに`rails_helper`を`require`することになりました。

参考  
<https://github.com/rspec/rspec-rails/blob/v3.4.0/README.md#upgrade-note>


CC BY-SA 3.0
2015-11-15T06:27:12.573
18839
2015-11-15T06:48:08.560
2015-11-15T06:48:08.560
2646
2646
18835
answer