$ Spec rspec / ne fonctionne pas pour moi. aide s'il vous plaît
-
08-10-2019 - |
Question
Je suis nouveau sur les rails et cela me arrête. Je suis en train de courir spec rspec / et je reçois des erreurs. Quelqu'un peut-il m'aider?
Ceci est le code que je reçois:
/Library/Ruby/Gems/1.8/gems/rspec-rails-2.0.0.a6/lib/rspec/rails/transactional_database_support.rb:33: constante uninitialized Rspec :: base (NameError)
de /Library/Ruby/Gems/1.8/gems/rspec-rails-2.0.0.a6/lib/rspec/rails.rb:1
de /Users/Kendall/Sites/sample_app/spec/spec_helper.rb:4
de /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require '
de /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require '
de /Users/Kendall/Sites/sample_app/spec/controllers/pages_controller_spec.rb:1
de /Library/Ruby/Gems/1.8/gems/rspec-core-2.1.0/lib/rspec/core/configuration.rb:334:in `charge '
de /Library/Ruby/Gems/1.8/gems/rspec-core-2.1.0/lib/rspec/core/configuration.rb:334:in `load_spec_files'
de /Library/Ruby/Gems/1.8/gems/rspec-core-2.1.0/lib/rspec/core/configuration.rb:334:in `carte '
de /Library/Ruby/Gems/1.8/gems/rspec-core-2.1.0/lib/rspec/core/configuration.rb:334:in `load_spec_files'
de /Library/Ruby/Gems/1.8/gems/rspec-core-2.1.0/lib/rspec/core/command_line.rb:18:in `run '
de /Library/Ruby/Gems/1.8/gems/rspec-core-2.1.0/lib/rspec/core/runner.rb:55:in `run_in_process'
de /Library/Ruby/Gems/1.8/gems/rspec-core-2.1.0/lib/rspec/core/runner.rb:46:in `run '
de /Library/Ruby/Gems/1.8/gems/rspec-core-2.1.0/lib/rspec/core/runner.rb:10:in `autorun '
de / usr / bin / rspec: 19
La solution
Utilisez
gem sudo update rspec-rails
Autres conseils
Il semble que vous avez une ancienne version des rails rspec-gem installé. Essayez le mettre à jour (2.1.0 est la version en vigueur au moment de l'écriture):
gem update rspec-rails
Mise à jour suite aux commentaires :
Vous devez spécifier le nom d'un ou plusieurs fichiers de spécification ou un répertoire contenant vos fichiers de spécifications. Par exemple, si vos fichiers de spécification sont dans un dossier appelé spec alors ce sera les exécuter tous:
rspec spec
Dans un projet Rails utilisant Bundler:
bundle exec rspec spec
Pour plus d'informations sur la commande rspec:
rspec -h
Peut-être est en retard, mais pour l'erreur:
No examples were matched. Perhaps {:unless=>#<Proc:0x00000001005b7790@/Library/Ruby/Gems/1.8/gems/rspec-core-2.1.0/lib/rspec/core/configuration.rb:53>, :if=>#<Proc:0x00000001005b7970@/Library/Ruby/Gems/1.8/gems/rspec-core-2.1.0/lib/rspec/core/configuration.rb:52>} is excluding everything? Finished in 0.00003 seconds 0 examples, 0 failures
Comme il est dit, un test n'a pas été trouvé dans votre fichier test_spec. Vous devez ajouter un "it" expression avec votre cas de test.