rspec雑感
入門書として参考になる書籍
Everyday Rails - RSpec による Rails テスト入門
- テストは信頼できるものであること
- テストは簡単に書けること
- テストは簡単に理解できること
何か学びたいことがあるときは、Webサイトや電子書籍からコピー&ペーストするのではなく、自分でコードをタイピングした方が良い
パーフェクトRuby on Rails
スペックの高速化
springを使う
書き方のひな形的なのがほしいとき
- フォーマット
describe 'テスト対象' do
context '状態' do
describe 'テスト対象メソッド' do
context '与える入力' do
it '期待する出力'
end
end
end
end
上記のひな形で書くこと意識づけて書くとitに書く説明も完結になり
.rspecに--format documentationを設定して実行したときにわかりやすいスペックになる
expect記法のマッチャーに何があるかわからなくなったとき
specの書き方でベストプラクティス的な書き方がわからなくなったとき
モックとスタブについて
スタブは、あるオブジェクトのメソッドが呼び出された時に、特定の戻り値を返すようにしたい場合に使う。
モックは、あるオブジェクトのメソッドがある引数で呼ばれたときに、特定の戻り値を返すようにしたい場合に使う。
https://github.com/rspec/rspec-mocks
http://nabewata07.hatenablog.com/entry/ruby/rspec/mocks2-14/syntax-and-spy
http://morizyun.github.io/blog/rspec-model-controller-ruby-rails/