bundle exec rspec VS rspec spec
Ruby 1.9.2 Rails 3.1
Ici, est le problème bundle exec rspec spec/
ne fonctionne pas, mais rspec spec/
fonctionne ok.
Quand je lance c:\RailsInstaller\work\apptwit>bundle exec rspec spec/
(c'est le répertoire de mon application se trouve, de sorte que le chemin d'accès à la spec n'aurait pas besoin de préciser)
- Je recevoir
c:/RailsInstaller/work/apptwit/spec/controllers/pages_controller_spec.rb:1:in `require': no such file to load -- spec_he lper (LoadError)
from c:/RailsInstaller/work/apptwit/spec/controllers/pages_controller_spec.rb:1:in `<top (required)>'
from C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/rspec-core-2.7.1/lib/rspec/core/configuration.rb:459:i
n `load'
from C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/rspec-core-2.7.1/lib/rspec/core/configuration.rb:459:i
n `block in load_spec_files'
from C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/rspec-core-2.7.1/lib/rspec/core/configuration.rb:459:i
n `map'
from C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/rspec-core-2.7.1/lib/rspec/core/configuration.rb:459:i
n `load_spec_files'
from C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/rspec-core-2.7.1/lib/rspec/core/command_line.rb:18:in
`run'
from C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/rspec-core-2.7.1/lib/rspec/core/runner.rb:80:in `run_i
n_process'
from C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/rspec-core-2.7.1/lib/rspec/core/runner.rb:69:in `run'
from C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/rspec-core-2.7.1/lib/rspec/core/runner.rb:10:in `block
in autorun'
/spec répertoire existe, comme il en existe spec_helper.rb.rb.
Donc en gros j'ai 2 questions:
- Pourquoi ne pas
bundle exec rspec spec/
travail tout enrspec spec/
a pas de problèmes? - Quelle est la différence entre ces deux commandes?
OriginalL'auteur Elijah | 2011-11-27
Vous devez vous connecter pour publier un commentaire.
Prendre un coup d'oeil à cette réponse.
bundle exec
changements de votre$PATH
, ou%PATH%
dans le cas de Windows. Comme un résultat, en utilisantbundle exec rspec
vous appelez le RSpec est la version qui est spécifié dans votreGemfile
.rspec
couru sans Bundler exécute la un dans votre$PATH
.L'erreur que vous voyez est peut-être causé par le fait que la RSpec version dans votre
$PATH
est incompatible avec les Rails de la version que vous utilisez. La version installée et exécutée par Bundler (avecbundle exec rspec
) est compatible et fonctionne très bien.OriginalL'auteur Jan