読者です 読者をやめる 読者になる 読者になる

Rails Webook

自社のECを開発している会社で働いています。Rails情報やサービスを成長させる方法を書いていきます

RailsでCucumberとRSpecを使うテスト環境を構築する

Rails gem テスト

RailsでCucumberとRSpecを使ってテストを行う環境を構築する方法について説明します。

本記事で環境の構築が完了したら「RailsでCucumberとRSpecを使ってテストを行う実例」を参照してください。

実施環境

  • Mac OS X 10.9
  • Ruby 2.0.0p247
  • Rails 4.1.4
  • cucumber-rails 1.4.1
  • RSpec-rails 3.0.1


Railsプロジェクトの作成

$ rails new test_rspec_cucmber --skip-test-unit
--skip-test-unit:デフォルトのTestフォルダを作らない


Gemfileの修正

$ vim Gemfile

....
group :development, :test do
  gem 'sqlite3'     # 開発、テスト環境ではSQLite3を使う
  gem 'rspec-rails' # RSpec用
end

group :test do
  gem 'selenium-webdriver'  # CapybaraがSeleniumに依存しているため追加
  gem 'capybara'            # 英語に文法でRSpecにテストを記述できる
  gem 'factory_girl_rails'  # FactoryGirl追加
  gem 'cucumber-rails', :require => false # Cucumber追加
  gem 'database_cleaner', github: 'bmabey/database_cleaner' # Cucumber用にDBクリーナーを追加
end


バンドルのインストールを実施する

$ bundle install


RSpecのインストール

  $ rails g rspec:install
      create  .rspec
      create  spec
      create  spec/spec_helper.rb
      create  spec/rails_helper.rb


Cucumberのインストール

$ rails generate cucumber:install
      create  config/cucumber.yml
      create  script/cucumber
       chmod  script/cucumber
      create  features/step_definitions
      create  features/step_definitions/.gitkeep
      create  features/support
      create  features/support/env.rb
       exist  lib/tasks
      create  lib/tasks/cucumber.rake
        gsub  config/database.yml
        gsub  config/database.yml
       force  config/database.yml


以上です。

次にCucumberとRSpecを使いながら開発を行う例を説明します。
RailsでCucumberとRSpecを使ってテストを行う実例