Rails勉強会@東京第58回に行ってきた
昨年12/18に行われたRails勉強会@東京第58回に行ってきた。
テストの話
「テストの話」で大まかに扱われるけど、細かく見ると次の3つの話題が出てくる。
- どうやってテストを書くか
- うまいテストの仕方・資産としての残し方
- テストの文化の浸透のさせ方・継続の仕方
今回は@moroさんをファシリテータとして、「rspecでテストをどう書くか」と「RelishでRspecの新機能を見る」の2点を行った。
話題がバラバラになりがちなので、進行をされた@moroさんはすごいなと思っていたんだけど、ここらへんをうまくカバーできるやり方を見つけたいと思う今日この頃。
で、その時の結論をうけた上で今覚えてる限りの結論。
どうやってテストを書くか
(いつか書く)
うまいテストの仕方・資産としての残し方
今回は出なかったけど、捨てるテスト、残すテストの話、かなぁ。
開発時の内部実装まで含めた、細かい挙動確認のためのテストで残しておくと後々リファクタリングすることができなくなるので、開発が一段落したらいっそ捨てるのもアリ。
それに対して外側からアプリケーションを叩いてそのINとOUTを見るためのテストは資産として残さなきゃいけない。
テストの文化の浸透のさせ方・継続の仕方
Hudsonを使って継続的にテストの実行とRCovによるカバレッジの集計をさせてそれを共有するのが良いらしい。Rubyではないけどサイボウズでの事例も興味深い。
あとはペアプロでTDDに慣らしていくとか。
あとこれはちょっと別かもしれないけど、「最初にテストを書かなきゃいけないという話だけど、なかなか難しい」という話が出てきた。それに対して@moroさんの話では、「最終的にテストを書いてチェックができればいいので、実装とテストのどちらが先になっても問題はない」ということだった。
自分の場合も、動作の確認がちゃんとできればいいやと思って実装してからテストを書くことは多い。もちろん実装の規模にもよるんだろうけど。
OmniAuthの話
(あとで書く)
ActiveSupport 3系のソースを読む
(あとで書く)