テストでは何をテストすべきか
ソフトウェア開発でのテストとは何かを単純に言うと、成果物が期待通りであるかを検証する作業といえる。こう動作してほしいという期待を入力に、成果物がその通りに動作するかを検証するのがテストである。
ソフトウェア開発でのテストとは何かを単純に言うと、成果物が期待通りであるかを検証する作業といえる。こう動作してほしいという期待を入力に、成果物がその通りに動作するかを検証するのがテストである。
著者より献本御礼。
この本は、コミュニティについて書かれた本である。さすがに、あの名著『Life with UNIX』と並ぶべくもないが、それでも現代日本のRuby界隈の雰囲気を書こうとした意欲がある。それだけでもこの本はユニークであるし、そこにいる著者たちのナラティブとして読む、というのも興味深いだろう。
システム開発をする上で、完了条件は避けて通れない。完了条件とは、いつ仕事が終わったかを定義するものである。この仕事が完成したということをステークホルダー間で合意できる基準といってもよい。
最近、新人のテストコードを見る機会があり、ユニットテストの書き方について考える機会があった。ユニットテストはテンプレートみたいなものがあるので、それさえ押さえれば、誰でも簡単に書くことができる。
ここでは、その方法について紹介したい。サンプルはRSpecで書くが、その他のユニットテストフレームワークでも、応用ができるとおもう。
デブサミ10周年記念に翔泳社で「君のために選んだ1冊 ソフトウェア開発の名著100」という本を企画されているそうです。カリスマプログラマからCIOまで、業界を代表する100人に書籍を推薦してもらうという企画だそうで、光栄にもお声がけいただき、原稿を書きました。私は、「アーキテクトを目指している現場のエンジニア」に向けての推薦図書というテーマで書いています。原稿をブログに掲載してもよいということでしたので、掲載します。
JUnit 4.4から組み合わせを表現するためのTheoryという機能が導入されています。このTheoryという機能について、日本語での概説がなかったため、調べた範囲で紹介したいとおもいます。
QCon Tokyo 2009に参加しました。日本では、なかなかなじみの薄い有料イベントということで、それほど動員があったわけではないようですが、とても刺激を受けた有意義なイベントで、個人的には技術的なポートフォリオを組み替える必要を感じたイベントです。