Je suis tombé sur cette erreur lors de l'essai de la section du didacticiel Ruby on Rails avec rspec sur une plate-forme Windows utilisant 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'
Trouvé la réponse qui semble manquante dans le tutoriel:
c:\Rails_projects\sample_app> Rails génèrent rspec: install
Après avoir couru
Rails generate rspec:install
Place ton *_spec.rb
fichiers sous (dans votre exemple) c:\Rails_projects\sample_app\spec\model
. Spécifiez ensuite le chemin relatif avec require_relative
require_relative '../spec_helper'
Exécutez la commande suivante
c:\Rails_projects\sample_app>Rails generate rspec:install
Cela mettra le spec_helper.rb
fichier dans votre /spec
répertoire
Lorsque vous exécutez 'Rails generate rspec:install'
, si tu vois 'Could not find generator rspec:install'
message d'erreur, ajoutez une gemme 'rspec-Rails'
dans :developnent
, :test
groupe dans votre projet Gemfile
comme indiqué ci-dessous.
group :development, :test do
gem 'rspec-Rails'
end
Après cela, exécutez 'bundle install'
et continuez avec 'Rails generate rspec:install'
Cela peut être d'une certaine utilité - dans le cas où rpsec
n'a pas été installé correctement sur un environnement Win7.
J'ai eu le même problème mais pour une raison différente:
dans mon spork.prefork
bloquer dans mon spec_helper.rb
fichier j'avais cette ligne
Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
mais dans l'un des fichiers requis ci-dessus (spec/support/some_helper_file.rb
) était un require 'spec_helper'
appel
supprimer ce besoin inutile a résolu le problème