Rails テストについて 2 (モデル編)


はじめに

テストに拒否反応があるので、まずは整理したいと思います。
少しづつ記事を書いていきます。
前回記事 → Rails テストについて 1

もうすでにご存知の方、省略の仕方等ご存知でしたら、ご助言願います。

必要なGemのインストール!

Gemfileに追記

gem 'rspec-rails'

その後、bundle installです。

web_console(gemfile内)の記述!

  • web_console というgemはtest環境で動かすと不具合が起きる可能性があるようです。
  • ということで、development環境でのみ動くようにしてください。
  • group :development do ~ endの記述が無ければ下記のように作成!
  • 既にある場合、その記述の間にweb_consoleを移動!
Gemfile

group :development do
  gem 'web-console'
end

その後、bundle installです。

RSpecの設定

  • RSpec用設定ファイルの作成
ターミナル

%rails g rspec:install

こんな感じで4つ作成されます!

ターミナル

%rails g rspec:install 

Running via Spring preloader in process 3820
      create  .rspec             ①
      create  spec               ②
      create  spec/spec_helper.rb      ③
      create  spec/rails_helper.rb     ④

ファイル説明

  • rails_helper.rb

    • RailsにおいてRSpecを利用する際に、共通の設定を書いておくファイル
    • 各テスト用ファイルでこちらのファイルを読み込むことで、共通の設定や、メソッドを適用できる。
  • spec_helper.rb

    • rails_helper.rbと同じくRSpec用の共通の設定を書いておくファイル
    • しかし、こちらはRSpecをRails無しで利用する際に利用する。

.rspecファイルに追記

表示の出力を綺麗にしてくれる一文です!
その分、出力数が多いです。

.rspecファイル内に追記


--format documentation

正常にRSpecが起動するか確認

ターミナル

% bundle exec rspec
No examples found.

Finished in 0.00077 seconds (files took 0.30404 seconds to load)
0 examples, 0 failures

と出力されれば、おkです!

テスト編、続きます・・・(さて準備が完了っすよ・・・)

さいごに

日々勉強中ですので、随時更新します。
皆様の復習にご活用頂けますと幸いです。