--rails6 × Je veux installer rspec dans un environnement docker
Ajoutez la gemme suivante à: develop ,: test gem "rspec-rails" gem "factory_bot_rails"
Gemfile
group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
#Cadre de test
gem "rspec-rails"
gem "factory_bot_rails"
end
MacBook-Nom de l'application Air% docker-compose run web rails g rspec:install
Nom de l'application de départ_db_1 ... done
Running via Spring preloader in process 64
create .rspec
create spec
create spec/spec_helper.rb
create spec/rails_helper.rb
Cela créera un fichier de configuration dans le répertoire de votre application
Tout d'abord, les fichiers associés sont générés automatiquement avec la commande suivante. modèle est son propre modèle.
MacBook-Nom de l'application Air% docker-compose run web rails g rspec:modèle Nom du modèle
Nom de l'application de départ_db_1 ... done
Running via Spring preloader in process 64
create spec/models/reception_spec.rb
invoke factory_bot
create spec/factories/receptions.rb
Si vous pouvez le générer, écrivez un test de validation cette fois
spec/factories/reception.rb
FactoryBot.define do
factory :reception do
name {"Exemple de visiteur 1"}
purpose {"entretien"}
organization {"Sample Co., Ltd."}
end
end
spec/models/reception_spec.rb
RSpec.describe Reception, type: :model do
reception = FactoryBot.create(:reception)
it 'instance de réception activée' do
expect(reception).to be_valid
end
end
Après avoir ajouté la spécification,
MacBook-Nom de l'application Air% docker-compose run web bundle exec rspec
Exécution terminée avec
MacBook-Nom de l'application Air% docker-compose run web bundle exec rspec
Nom de l'application de départ_db_1 ... done
.
Finished in 0.22889 seconds (files took 6.32 seconds to load)
1 example, 0 failures
Avant d'écrire la spécification de la requête, générez les fichiers nécessaires avec le générateur.
docker-compose run web rails g rspec:demande le nom du contrôleur/Nom du modèle
Starting heytaisho_db_1 ... done
Running via Spring preloader in process 66
create spec/requests/receptions_spec.rb
Ouvrez et modifiez le fichier généré
https://qiita.com/Ushinji/items/522ed01c9c14b680222c
Recommended Posts