![見出し画像](https://assets.st-note.com/production/uploads/images/57459814/rectangle_large_type_2_3d2396b5cd40d58f87f6bcbdabc03250.png?width=1200)
RSpecの環境構築と基本
1. 環境構築
・RSpecの環境構築(:development, :test以下に記述し、bundle install)
gem 'rspec-rails'
gem 'factory_bot_rails'
'factroy_bot_rails'は、テストデータ作成を支援してくれるもの。これもgemに記述する。
・RSpecに必要なディレクトリを作成するためにコマンドを実行
rails g rspec:install
2. 基本形
describe [仕様を記述する対象(テスト対象)], type: [Specの種類] do
content [ある状況・状態] do
before do
[事前準備]
end
it [仕様の内容(期待の概要)] do
[期待する動作]
end
end
end
まとめると
・テストケースの整理・分類 -> describe, context
・テストコードを実行する -> before, it
(describe)
何について仕様を記述しようとしているのか(テストの対象)を記述する。
(context)
テストの内容「状況・状態」のバリエーションごとに分類するために利用する。例えば、ユーザーがログインしているのかしていないのか、管理者か一般ユーザーかなどの条件を記述し、続くブロック内に、そのような条件下で想定する動作をさらに記述する。
(before)
前提条件を記述するところ。describeとcontent内にbeforeは、対応する領域内のテストコードを実行する前に、beforeのブロック内に書いたコードが実行される。
(it)
実際に期待する動作を文章と、ブロック内のコードを記述するところ。末端のテストケース。