[RAILS] Installation de RSpec

introduction

Installez RSpec en vous référant au RSpec Kotohajime ~ Manuel de configuration initiale ~ et au document officiel.

environnement

Consultez cet article pour l'installation de Rails. Environnement de construction de rails avec WSL de Windows 10

Installation de RSpec

Voir aussi: rspec / rspec-rails Suivez la procédure officielle d'installation. Tout d'abord, modifiez le fichier Gemfile.

Gemfile


group :development, :test do
  [réduction]
  gem 'rspec-rails', '~> 4.0.1'
end

Après avoir édité le Gemfile, exécutez la commande suivante directement sous le répertoire du projet.

command



#Installation de RSpec
$ bundle install

#Création d'un fichier de réglage standard
$ rails generate rspec:install
Running via Spring preloader in process 266
      create  .rspec
      create  spec
      create  spec/spec_helper.rb
      create  spec/rails_helper.rb

Un répertoire pour RSpec et un fichier de configuration ont été créés. Puisque RSpec sera utilisé à partir de maintenant, supprimez le répertoire / test pour Minitest.

command


#Supprimer le répertoire de test
$ rm -rf test

Réglage initial

Ajoutez les paramètres au fichier .rspec créé.

.rspec


--require spec_helper
--color
--format documentation
Nom de l'option Explication
require Spécifier le fichier à appeler
coler Colorez la sortie
format Réglage du format de sortie

Référence: Ligne de commande --RSpec Core --RSpec --Relish

Ce paramètre élimine le besoin de «require'spec_helper» dans le fichier de spécifications. Le résultat de sortie n'est pas seulement un point, mais un format de phrase. Ceci termine les réglages de base.

Système de test Gem

Pour le moment, il suffit de mettre sur la liste. De faux services seront ajoutés plus tard.

Nom de la gemme URL
factory bot thoughtbot/factory_bot_rails
rubocop-rspec rubocop-hq/rubocop-rspec
webmock bblimke/webmock

À propos du bonus database_cleaner

Exécutez les tests système de Rails 5.1 ou version ultérieure avec RSpec (traduction) Comme mentionné dans l'article référencé, database_cleaner semble être inutile après Rails 5.1. Cependant, il semble que le mécanisme de restauration soit implémenté dans System Spec au lieu d'installer automatiquement database_cleaner. En premier lieu

spec/rails_helper.rb


RSpec.configure do |config|
  config.use_transactional_fixtures = true
end

Référence: Transactions --RSpec Rails --RSpec --Relish Avec les paramètres ci-dessus, les opérations de base de données effectuées par RSpec seront traitées sur une transaction et supprimées par restauration. La raison pour laquelle database_cleaner a été introduit

[Translation + α] Utilisez la gemme database_cleaner avec Rails / RSpec / Capybara / Selenium En effet, les paramètres ci-dessus fonctionnent efficacement dans le processus RSpec et ne fonctionnaient pas efficacement s'il s'agissait d'une émulation gérée par l'utilisateur (Feature Spec) utilisant Capybara / Selenum, etc. Par conséquent, je souhaite définir le nettoyage de la base de données en détail au moment du test! Vous n'avez pas besoin de database_cleaner, sauf si vous utilisez toujours Feedback Spec au lieu de System Spec.

Recommended Posts

Installation de RSpec
Introduction de RSpec
Configuration RSpec
Rspec, TDD (1)
Bonjour RSpec
OwlgardenRPA - Installer
Installer Apache J Meter
Installez MariaDB (CentOS 8)
[CentOS] Installez apache-loggen
erreur d'installation du bundle
Principes de base de Rspec [Rails]
erreur d'installation du compositeur
[Rails5] Rspec -validation-