в 'require': такой файл не загружается - spec_helper - PullRequest
32 голосов
/ 01 марта 2011

Наткнулся на эту ошибку, когда пробовал раздел учебника ruby ​​on rails с rspec на платформе Windows, используя jruby 1.6:

c:\rails_projects\sample_app>bundle exec rspec spec/
org/jruby/RubyKernel.java:1038:in `require': no such file to load -- spec_helper
 (LoadError)
        from c:/rails_projects/sample_app/spec/controllers/pages_controller_spec    .rb:1:in `(root)'
        from org/jruby/RubyKernel.java:1063:in `load'
        from c:/rails_projects/sample_app/spec/controllers/pages_controller_spec
.rb:386:in `load_spec_files'
        from org/jruby/RubyArray.java:2458:in `collect'
        from c:/jruby-1.6.0.RC2/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspe
c/core/configuration.rb:386:in `load_spec_files'
        from c:/jruby-1.6.0.RC2/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspe
c/core/command_line.rb:18:in `run'
        from c:/jruby-1.6.0.RC2/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspe
c/core/runner.rb:55:in `run_in_process'
        from c:/jruby-1.6.0.RC2/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspe
c/core/runner.rb:46:in `run'
        from c:/jruby-1.6.0.RC2/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspe
c/core/runner.rb:10:in `autorun'
        from org/jruby/RubyProc.java:268:in `call'
        from org/jruby/RubyProc.java:232:in `call'

Найден ответ, который отсутствует в учебнике:

c: \ rails_projects \ sample_app> rails генерирует rspec: install

Ответы [ 5 ]

55 голосов
/ 06 июля 2011

После запуска

rails generate rspec:install

Поместите ваши *_spec.rb файлы в (в вашем примере) c:\rails_projects\sample_app\spec\model. Затем укажите относительный путь с помощью require_relative

require_relative '../spec_helper'
12 голосов
/ 01 марта 2011

Запустите следующую команду

c:\rails_projects\sample_app>rails generate rspec:install

Это поместит файл spec_helper.rb в каталог /spec

4 голосов
/ 22 марта 2012

При выполнении 'rails generate rspec:install', если вы видите сообщение об ошибке 'Could not find generator rspec:install', добавьте gem 'rspec-rails' в группу :developnent, :test в вашем проекте Gemfile, как показано ниже.

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

После этого выполните 'bundle install' и продолжайте с 'rails generate rspec:install'

0 голосов
/ 04 марта 2016

У меня была та же проблема, но по другой причине:

в моем блоке spork.prefork в моем файле spec_helper.rb У меня была эта строка

Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}

, но в одной изфайлы, которые требовались выше (spec/support/some_helper_file.rb), были require 'spec_helper' вызовом

удаление этого ненужного требования решило проблему

0 голосов
/ 13 июня 2012

Это может быть полезно - в случае, если rpsec не был правильно установлен в среде Win7.

rails3 rspec Issue

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...