テストコードには What

「ドキュメントに Why」は、言いだしっぺの角谷さん自身によって解題されたわけだが、「テストコードに What」がピンとこない人が多いと思う。てか私がそう。


LL Ring「LL で関数プログラミング」(ppt)で、宣言的な記述、仕様記述言語に触れられたが、現在、これを担保してるのがユニットテストであると思う。これ質疑応答で聞こうと思ったけど、私自身の理解が浅いし、ツッコむなら角谷さんだろうということで流した。


まぁ、知ってる人は知ってるけど、TDDにおけるユニットテストはテストだけじゃなくて、設計の一部でもあるんだな。そうなると出てくるのが BDD (Behaviour Driven Development) で、「A NEW LOOK AT TEST-DRIVEN DEVELOPMENT」をドゾー(またもや角谷さんが出てきて「RSpecを使おう」)。これ面白いから Rubyist とか関係なしに読んでね。中断して今読むこと。


で、これが What だろ? 多分。ちょっと違うかな?