2015-06-10 2 views
0

Во время работы RSpec, я получаю следующее сообщение об ошибке:'не может загрузить такой файл - factory_girl_rails (LoadError)' в рельсах 4.1.8

/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require': cannot load such file -- factory_girl_rails (LoadError) from /Users/radhikabhatt/.rbenv/versions/2.2.2/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire' 
from /Users/radhikabhatt/Desktop/work/cl_portalmiudla/spec/spec_helper.rb:19:in <top (required)>' from /Users/radhikabhatt/.rbenv/versions/2.2.2/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire' 
from /Users/radhikabhatt/.rbenv/versions/2.2.2/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' 

Мой gemfile.lock выглядит как:

factory_girl (4.5.0) 
activesupport (>= 3.0.0) 
factory_girl_rails (4.5.0) 
factory_girl (~> 4.5.0) 

spec_helper.rb имеет строку require 'factory_girl_rails'. Пожалуйста, дайте мне знать, если я что-то пропустил.

ответ

0

factory_girl_rails - это драгоценный камень railtie, что означает, что он зацепится за жизненный цикл рельсов и зарегистрируется. Поэтому вам не нужно требовать его неявно. На самом деле вы даже не можете требовать его, что является причиной ошибки в вашем вопросе. Все, что вам нужно сделать, это просто включить его в Gemfile и расслоить его. Затем вы получаете генераторы для factory_girl вместе с ним.

Для того, чтобы использовать factory_girl с RSpec, вы можете добавить в вас spec_helper.rb следующим образом:

# RSpec 
# spec/support/factory_girl.rb 
RSpec.configure do |config| 
    config.include FactoryGirl::Syntax::Methods 
end 

Он взят из factory_girl docs