[ブログ紹介] TDD三原則
正確にはブログではなくて、 個人でやっておられる wiki サイトに掲載された翻訳記事です。
やっとむのサイト: TDD 三原則
Last Change 06/29/09http://www.butunclebob.com/ArticleS.UncleBob.TheThreeRulesOfTdd の翻訳です。
ぼくはいままで、 テスト駆動開発を3つのシンプルなルールで説明してきた。
- 失敗するユニットテストを成功させるためにしか、 プロダクトコードを書いてはならない。
- 失敗させるためにしか、 ユニットテストを書いてはならない。 コンパイルエラーは失敗に数える。
- ユニットテストを1つだけ成功させる以上に、 プロダクトコードを書いてはならない。
この記事を書かれた やっとむ 氏というのは、 今年の初めに出版された 「アジャイルな見積りと計画づくり」 の翻訳をなさった方で、 日本 XP ユーザーグループのスタッフでもある安井力氏です。
そして、 元記事を書かれた UncleBob こと Robert C Martin 氏こそは、 2001年に開催され、 「アジャイルソフトウェア開発宣言」 ( Manifesto for Agile Software Development ) を採択した 2日間に及ぶ会議を、 招集した人物です。
なお、 私としては、 Uncle Bob の言う 「3つのシンプルなルール」 というのは、 あくまでも TDD の範疇の話である、 と強調しておきたいと思います。 部分的に TDD を適用しないこと ( たとえば、 現状では GUI のコードなど ) もあるでしょう。 あるいは、 TDD で開発したコードにたいして、 仕様を説明するためのテストコードを、 追加で書くこともあるでしょう。 実際、 Uncle Bob 自身が次のように述べています。
InfoQ: Spolsky と Bob おじさんの対決
2009年2月28日
ぼくがすべてのテストを先に書いているというわけではないぞ。 テストの中には、 ごく一部だけど、 コードの後で書く方が具合がいいものもある。 テストをまったく書かないコードだってある。 書く価値がないからだ。 だが、 これは例外で、 ルールはある。
どんなルールでも例外はある、 ということですね。
| 固定リンク
「ブログ紹介」カテゴリの記事
- [ブログ紹介] Writing Unit Tests in F#(2011.11.09)
- [ブログ紹介] VS と連携 *しない* NUnit の使い方(2011.08.01)
- [ブログ紹介] 三角形問題で必要なテストケース数(2011.06.08)
- [ブログ紹介] CppUnit を Visual Studio C++ 2010 でビルドするには(2011.06.06)
- [ブログ紹介] TDDBC ポータル (Hiki)(2011.03.11)
コメント