契約とテストの文化
2007.05.07
さて、Meyer ネタです。このところ遊びで書いているプログラムに、わりと真面目に XP 風の Test First を実践してみよう....ということをしてみましたが、これ結構イケますね。で、考えたことですが、「こういうTest Firstって、そういえば Meyer の契約主導設計に結構近いものが??」という問題なのですね。
で調べてみると、ちょうどいいメーリングリストの投稿がありました。
> 私もこの点が気になってJPLoPの友野さんにお聞きしたのですが、XPでいう
> テストはMeyerの契約主導設計の実現の一種であるというお話でした。「表
> 明」というのでしょうか。「表明」は「こうなっているべきだ」というのを事
> 前条件、事後条件、不変条件で通常そのプログラムの内部で記述するものです
> (というのは平鍋さんのほうが詳しいと思います)が、それを外側にもってきた
> のが、XPのテストということでしょうか。
私の最近の頭の中では,
Meyer の表明
"Built-in Test", "Test Inside Code", "Testing-in Strategy"
XP の Unit Test
"Built-out Test", "Test Outside Code", "Testing-out Strategy"
など分類されています.このような分類で,テストを考えている他
の文献等ありませんかね?
やっぱり同じような感想を持つ方がいるようです。確かに「Meyer 的表明=内部に埋めこまれたXP的テスト」、「XP的テストファースト=契約主導設計の変形」というような等式が成り立つのかも?ということなのですね。
そう考えてみると、やはり Meyer の「オブジェクト指向入門」はやはりかなり強烈に時代を先取りしていた本だったのかもしれません。たとえば、Annotation で書いた表明記述から、XP のテストクラスを自動で変換しちゃうとか、そういうものもありそうな...
投稿者 : 杉浦 こずえ | 投稿日時 : 2007.05.07 09:49





