Il s'agit d'un cadre de test pour BDD (développement axé sur le comportement) en ruby.
En plus de pouvoir simuler le fonctionnement du navigateur d'une application Web, le fonctionnement du navigateur peut être décrit de manière intuitive à l'aide du DSL de capybara. Vous pouvez en fait utiliser un navigateur ou un navigateur Handless (sans GUI)
C'est un joyau qui prend en charge la création de données de test. Les données de test peuvent être facilement préparées et peuvent être appelées à partir du test et utilisées.
Ajouter une gemme à Gemfile À ce stade, remplissez le bloc du groupe de test En remplissant le groupe, le gem ne sera activé que dans l'environnement de test.
Gemfile
group :test do
# Adds support for Capybara system testing and selenium driver
gem 'capybara', '>= 2.15'
gem 'selenium-webdriver'
# Easy installation and use of chromedriver to run system tests with Chrome
gem 'webdrivers'
gem 'rspec-rails'
end
python
$ bundle
Après avoir exécuté le bundle, exécutez la commande generate suivante pour créer les répertoires et les fichiers de configuration requis pour RSpec.
python
$ bin/rails g rspec:install
Après cela, le répertoire de test préparé par Rails par défaut n'est plus nécessaire, supprimez-le.
python
$ rm -r ./test
Configurez Handless Chrome dans votre navigateur. À ce moment, une erreur se produira et peut être résolue en vous référant au lien ci-dessous. https://takuyakou.hatenablog.com/entry/2019/09/12/192755
spec_helper.rb
RSpec.configure do |config|
config.before(:each, type: :system) do
driven_by :selenium_chrome_headless
end
...réduction
end
Ajoutez factory_bot_rails au Gemfile et exécutez le bundle.
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]
gem 'factory_bot_rails'
end
Vous pouvez maintenant tester à partir du répertoire spec qui a été créé sans l'application Rails.
Recommended Posts