こんにちは、Nanayakuです。
今回は、RSpecで出てきた用語の意味や機能をざっくりまとめてみました。
目次
RSpecとは
RSpecはテストフレームワークの1つで、TDD(テスト駆動開発)に分類されます。
テスト駆動開発とは、
テストを重視してプログラムを作る方法で、「テストを先に作ってしまって、そのテストに合格するプログラムを正解としよう」という考え方でプログラムを作る方法です。
マッチャ(matcher)とは
マッチャ(matcher)とは、期待値と実際の値が一致するかを検証するオブジェクトの事です。
メソッドじゃないかと調べてみましたが、「expect().to」 の部分がメソッドにあたり、「eq」などのmatcherは比較条件を指定するオブジェクトになります。
つまり、期待値と実際の値を比較して、どうなっているか判断する部分です。
モック(mock)とは
モック(mock)とは、DBに保存されない空のオブジェクトの事です。
DBを介さないため、テストの実行が軽くなります。
参考
Capybaraとは
View(画面)での操作の実行結果の検証を行うテストです。
つまり、
- リンクに移動して入力欄に入力しボタンをクリックして新規登録・ログインができるか?
- リンクをクリックして、目的のページに移動できるか?
- アラートが表示されるか?
などを検証します。
Railsのバージョンが5.1以上の場合、Capybaraはデフォルトで入っています。
参考
最後に
備忘録がわりに作ったので、間違っている所とかあったら、コメントくれると嬉しいです。