Références Rails au quotidien - Introduction aux tests de rails avec RSpec https://leanpub.com/everydayrailsrspec-jp
Environnement Mac Ruby 2.4.9 Rails 5.1.1
Ceci est un mémorandum pour l'introduction de Rspec.
Ouvrez GemFile et rendez-le disponible dans des environnements de test et de développement Ajoutez RSpec au groupe suivant.
GemFile.
group :development, :test do
#Veuillez modifier la spécification de version supplémentaire en fonction de chaque environnement.
gem 'rspec-rails', '~> 3.6.0'
end
Entrez la commande suivante
Terminal.
bin/rails g rspec:install
Ensuite, les dossiers suivants sont créés.
Terminal.
Running via Spring preloader in process 53239
create .rspec
create spec
create spec/spec_helper.rb
create spec/rails_helper.rb
Vous êtes maintenant prêt.
Ensuite, modifiez la sortie RSpec qui circule vers le terminal pendant le test en un format de document facile à lire. Décrivez ce qui suit dans .rspec.
.rspec
#Il est répertorié par défaut.
--require spec_helper
#Ajoute ça
--format documentation
Qu'est-ce que binstub? Un bricoleur qui peut démarrer l'application rapidement et peut facilement appeler bin / ~ depuis le bundle exec ~.
URL de référence https://qiita.com/tanaka51/items/bc22c1c364202d3cce4e
Ajouter à l'environnement de développement et au bundle
GemFile.
group :development do
gem 'spring-commands-rspec'
end
Tapez ensuite la commande suivante dans le terminal, RSpec est nouvellement ajouté dans le répertoire bin directement sous le répertoire de l'application Rails.
Terminal.
bundle exec spring binstub rspec
Quand tu as fini si loin
Terminal.
bin/rspec
Vérifiez si le test s'exécute avec. C'est super facile car il exécute les tests dans le répertoire rspec en une seule fois. Et la deuxième manche est incroyablement rapide.
C'est une extension pratique qui ouvre le code de test et VS Code testera l'écran avec cmd + shift + t!
Hautement recommandé
Demandez-leur de créer un fichier de test RSpec lorsqu'ils ajoutent du code à l'application avec le générateur. Cependant, il n'est pas bon de créer des répertoires inutilisés et des fichiers de test, donc en même temps, ne pas créer de répertoires inutilisés.
Ajoutez à config / application.rb.
config/application.rb
module Projects
class Application < Rails::Application
# Initialize configuration defaults for originally generated Rails version.
config.load_defaults 5.1
# Settings in config/environments/* take precedence over those specified here.
# Application configuration should go into files in config/initializers
# -- all .rb files in that directory are automatically loaded.
#Ajouter ci-dessous à partir d'ici
config.generators do |g|
#Créer un fichier de test RSpec lors de la génération
g.test_framework :rspec,
#Ignorer la création de fichiers pour créer des enregistrements dans la base de données de test
fixtures: false,
#Indiquez de ne pas créer de spécifications de vue
view_specs: false,
#Indiquez de ne pas créer de spécifications pour les fichiers d'assistance
helper_specs: false,
#Omettre la création de fichiers de spécifications pour ruding
routing_specs: false
end
#Jusque là
end
end
Si vous souhaitez l'ajouter manuellement Créez le nom du répertoire et le nom du fichier que vous souhaitez tester ensemble Si vous souhaitez tester app / helpers / projects_helper.rb, créez spec / helpers / projects_helper_spec.rb.
Enfin, supprimez le répertoire de test que Rails fournit par défaut!
À propos, si vous souhaitez créer uniquement le fichier RSpec, entrez la commande generate suivante et il sera créé. Dans les cas suivants, le répertoire de modèle est créé dans le répertoire RSpec et le fichier RSpec de l'utilisateur est créé.
spec/models/user_spec.rb
Terminal.
bin/rails g rspec:model user
#résultat
create spec/models/user_spec.rb
C'est tout pour cette fois.
Si vous avez des erreurs, des erreurs ou des conseils, nous vous serions reconnaissants si vous pouviez nous les apprendre. Merci beaucoup.