趣旨 自動テストは重要だ。この主張に真っ向から異を唱えるひとは多くないだろう。 だが実際には、テストを書くのはいささか面倒だ。特にコントローラのテスト(functional test) に苦手意識を持っている人は多いのではないか。post やら get やらいろんなメソッドが前触れもなく出てくるコントローラのテストは、モデルのテスト(unit test) に比べると「ワケわからん」感が強い。そこで今日は、functional test の仕組みについてしつこく探究してみる。仕組みを理解しないと、コントローラのテストは書きづらいと思うからだ。 functional test の例 簡単なブログエンジンを作るとしよう。 Entry(ブログ記事) というモデルを考えて、それを CRUD するコントローラとビューの足場(scaffold) を作る。 % rails -d sqlite3 blog_