RSpecとは
Rubyでwebアプリなどを作っている時、
ちゃんとアプリが自分たちの設計通りに動くがテストするた目の機能がRSpecです。
matcherとは
自分がテストでこういうように動くと期待してテストをします。
それが期待した通りに動いたか、動かなかったかを確認するためのものです。
to be_validとは
validとは有効という意味の単語です。
あることを期待してその通りの結果になるのかをテストするときに使います。
例えば
memo = Memo.new(title: "RSpec", content: "テストを学習")
expect(memo).to be_valid # memo.valid? が true ならテストは期待通りに動いてることになります。
invalid
invalidは有効ではないのでfalseを返します。
memo = Memo.new(title: "RSpec", content: "テストを学習")
expect(memo).to be_invalid # memo.in_valid? がfalseかどうかを確認します。
最後に
自分はエンジニアの実務は未経験の状態で書いているのですが、
現役エンジニアの方がお話されていたことを書きます。
この記事は未経験に方向けですの記事です。
プロジェクトや会社によって変わってくるのですが
実務ではコードレビューで動作の確認はしないみたいです。
中には上記のような会社やプロジェクトもあるかと思います。ただRailsの開発だと
RSpecでテストを書いて動作するかテストをするみたいです。
実務に入る前にテストを学習してから実務に入るといいみたいです。
参考資料
https://qiita.com/jnchito/items/2e79a1abe7cd8214caa5
https://qiita.com/Naoki_Egawa/items/160b04193d8f3c534127