Ruby on Rails + Rspec + Capybara 初期設定

Tadashi Shigeoka ·  Thu, August 31, 2017

Ruby on Rails 5 で Rspec と Capybara の初期設定をしてテストケースを実行するまでの手順をご紹介します。

Ruby on Rails | ルビーオンレイルズ

Gem rspec, rspec-rails のインストール

まず rspec, rspec-rails の gem を Gemfile に追加して bundle install します。

Gemfile

group :development, :test do
  ## Rspec ##
  # Rspec 本体
  gem 'rspec'
  # Rails 用 Rspec ライブラリ
  gem 'rspec-rails'
end
bundle install

Rspec の初期設定

次に Rspec の初期設定をするために rails generate rspec:install コマンドを実行します。

bundle exec rails generate rspec:install
      create  .rspec
      create  spec
      create  spec/spec_helper.rb
      create  spec/rails_helper.rb

コマンド実行後は、以下の設定に使うファイルが作成されます。

  • .rspec
  • spec/spec_helper.rb
  • spec/rails_helper.rb

Feature テストを Capybara で動かす

最後に Rails の Feature テストを Capybara で動かしておきます。

以下の Feature テストケースの内容は、トップページにアクセスしたら HTTP Status code 200 を返すだけのシンプルな内容です。

spec/features/homes_spec.rb

require 'rails_helper'

RSpec.feature "Home page", type: :feature do
  scenario "access to index" do
    visit "/"
    expect(page.status_code).to eq(200)
  end
end

追加したテストを実行してみると、正常にテストが成功することを確認できました。

bundle exec rspec                           
.

Finished in 2.62 seconds (files took 2.99 seconds to load)
1 example, 0 failures

これで Capybara を利用した簡単な E2E テストが動くところまで確認できました。

以上、Rails + Rspec + Capybara でテストコードを書きたい現場からお送りしました。