Comment puis-je demander à Rails d’utiliser RSpec à la place de l’unité de test lors de la création d’une nouvelle application Rails?

J’ai test-unit installé et rspec installé (avec -core , -expectations , -mocks et -rails version -rails ). Lorsque je lance la commande rails new foo , il utilise test-unit pour générer les fichiers de stub de test au lieu de rspec .

Existe-t-il une option permettant aux rails d’utiliser rspec pour générer les tests à la place?

Les éléments suivants devraient fonctionner:

en ligne de commande:

 rails new MYAPP -T # The -T option tells rails not to include Test::Unit 

dans Gemfile:

 gem 'rspec-rails' 

en ligne de commande:

 bundle install rails g rspec:install 

Créez votre nouvelle application de rails en tant que:

 rails new  -T 

Ou supprimez votre répertoire de test de votre application existante:

 rm -rf test/ 

Faites une entrée dans votre Gemfile:

 gem 'rspec-rails' 

A partir de la ligne de commande, installez la gem

 $ bundle install 

Depuis la ligne de commande, installez rspec dans votre application:

 $ rails g rspec:install 

Maintenant, votre application rails utilise RSpec au lieu de l’unité de test.

Je suis un nouveau développeur et je viens de créer un indicateur de rails (-rspec) pour résoudre le problème des OP. Il se débarrasse de Test :: Unit et insère le gem rails-rspec avec un script bash. Le script peut être modifié pour aider les développeurs Linux en ajoutant automatiquement theremByracer gem ou créer des indicateurs personnalisés et des gemsets. (peut-être spécifiquement aller à cette ligne de gemme et supprimer le commentaire)

Voici l’essentiel. J’espère que cela aidera quelqu’un. https://gist.github.com/MTen/8310116

Une fois que vous avez créé votre application rails avec:

 rails new  -T # to exclude Test::Unit 

Ajoutez le gem RSpec à votre Gemfile de la manière suivante:

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

Dans la ligne de commande, écrivez:

 bundle install # this will install the missing gems 

Maintenant, vous devez installer RSpec en exécutant:

 rails generate rspec:install 

Cela générera les fichiers suivants:

 create .rspec create spec create spec/spec_helper.rb create spec/rails_helper.rb 

J’ai fortement recommandé de lire tous les commentaires de spec_helper et rails_helper pour bien comprendre ce que fait chaque option.

Une fois que tout est réglé, vous pouvez exécuter tous vos tests avec:

 bundle exec rspec 

Vous pouvez en savoir plus sur les configurations spec_helper et rails_helper recommandées sur https://kolosek.com/rails-rspec-setup .