Es ist ein Test-Framework für BDD (Behaviour-Driven Development) in Ruby.
Der Browserbetrieb kann nicht nur den Browserbetrieb einer Webanwendung simulieren, sondern auch intuitiv mit DSL von capybara beschrieben werden. Sie können tatsächlich einen Browser oder einen Handless-Browser (ohne GUI) bedienen.
Es ist ein Juwel, das die Erstellung von Testdaten unterstützt. Testdaten können einfach aufbereitet und aus dem Test abgerufen und verwendet werden.
Füge Gem zu Gemfile hinzu Füllen Sie zu diesem Zeitpunkt den Block der Testgruppe aus Durch Ausfüllen der Gruppe wird der Edelstein nur in der Testumgebung aktiviert.
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
Führen Sie nach dem Ausführen des Bundles den folgenden Befehl generate aus, um die für RSpec erforderlichen Verzeichnisse und Konfigurationsdateien zu erstellen.
python
$ bin/rails g rspec:install
Danach ist das von Rails standardmäßig vorbereitete Testverzeichnis nicht mehr erforderlich. Löschen Sie es daher.
python
$ rm -r ./test
Richten Sie Handless Chrome in Ihrem Browser ein. Zu diesem Zeitpunkt tritt ein Fehler auf, der unter dem folgenden Link behoben werden kann. 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
...Kürzung
end
Fügen Sie factory_bot_rails zur Gemfile hinzu und führen Sie das Bundle aus.
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
Jetzt können Sie aus dem Spezifikationsverzeichnis testen, das ohne die Rails-App erstellt wurde.
Recommended Posts