Everyday Rails - RSpecによるRailsテスト入門 1. イントロダクション

1.テストを書くことに抵抗を感じる理由

  • Rubyや規約の厳しいwebフレームワークを覚えることだけで精一杯になってしまい、そこへさらに新しい技術が増えるのは余計な仕事としか思えない
  • テストを書く時間が増えることによって、顧客や上司から要求されている機能に費やす時間が減ってしまうから
  • ブラウザのリンクをクリックするのがテストであるという習慣から抜け出せないから

2.なぜRspecなのか?

  • Rspecを使うと読みやすいスペックが簡単にかけるから(specとは、specificationの略で仕様書の意味)

3.対象となる読者

  • Railsの開発経験は多少あるものの、テストにはまだ馴染めいない開発者

4.著者の考えるテストの原則

  • テストは信頼できるものであること
  • テストは簡単に書けること
  • テストは簡単に理解できること
  • テストは自分に開発者としての自信を付けさせるものであるべき

5.テスト駆動開発者に近くことでことで失うもの

  • スピード
  • DRYなコードは目指さない(テストにおいては、DRYでないコードは必ずしも悪とは限らない)

6.Rspecの設定

 6.1.rspecに--format documentationを追加

 rails g rspec:installで生成するファイル(4つ)

  • Rspecの設定ファイル : .rspec
  • 作成したスペックファイルを格納するディレクトリ:spec
  • Rspecの動きをカスタマイズするヘルパーファイル:spec/spec_helper.rb, spec/rails_helper.rb

.rspecに--format documentationを追加することでRspecのテスト結果がデフォルトの形式からドキュメント形式に変更され、どのスペックがパスをし、どのスペックが失敗したのかがわかりやすくなる

 6.2 binstubをインストールしテストスイートの起動時間が早く