Index: [Article Count Order] [Thread]

Date:  Mon, 25 Dec 2000 15:28:40 +0900
From:  Gunji Tsukuda <tsukuda@....jp>
Subject:  [XP-jp:01406] Re: リズム Was:Re: 	テスティングフレームワークの 	suite メソッド
To:  extremeprogramming-jp@....jp (extremeprogramming-jp ML)
Message-Id:  <3A46E912.FB621822@....jp>
References:  <B66A9339.347F%khosokawa@....com>
Posted:  Mon, 25 Dec 2000 15:28:34 +0900
X-Mail-Count: 01406


佃です。

Kaoru Hosokawa wrote:
> 
> ホソカワです。
> 
> on 00.12.18 6:26 PM, Gunji Tsukuda at tsukuda@....jp wrote:
> 
> >
> > 佃です。
> 
> …
> 
> >
> > 楽しい経験でしたが、まだXPの開発のリズムに乗りきれる自身は
> > ありません。
> > XPを試したみたみなさんは、最初からXPのリズムに乗れたんで
> > しょうか?じ
> 
> 「test a little, code a little, test a little, ...」のリズムですよね。Wake
> 氏のモデルで Test First Programming (TFP) を試した事はないのですが、10分間
> 隔で、「テストを書いて、コードを書いて」のサイクルがくり返せれば、リズムに乗
> れると思いますよ。10分以上だとリズムがくずれたような気がします。それから、
> Java では、テストのコンパイルが通るようにする為に時間をとられてリズムが乱れ
> る時があるようにも感じます。TFP には、Smalltalk がやはり向いているのかもしれ
> ませんね。
> 

私が違和感を感じるのは、末端のクラスのテストプログラムからコ
ーディングを始めていることだと思います。私だったら
testDocumentからではなく、testSearchFactoryや
testOneElementCollectionから書きはじめたい。つまり、ボトムア
ップではなく、トップダウンでコーディングして行きたい。トップ
ダウンで考えれば、末端のクラスのメソッドが明らかになるが、ボ
トムアップで考えると、末端のクラスのメソッドが明らかにならな
いので、どういうテストを書けばいいのかわからない。

しかし、トップダウンで書いていくと、「テストを少し書いて、実
装を少しして、テストを実行させて動作を確認して、、」という小
気味よいリズムにならない。最初に書いたテストの動作を確認する
ためには、テスト対象のクラスが呼び出している別のクラスも実装
させなければならないので。別のクラスの実装は最初のテストがう
まく程度にスタブとして記述すればよいが、そのメソッドの実装を
忘れないようにするためには、そのテストの仕様をテストとして記
述しておく必要がある。

1つのテストの動作を確認するために関係する多くのテストプログ
ラムを記述することになってしまうので、どうにも小気味よいリズ
ムは生まれない。

 ***

TFPを実践しているみなさんはボトムアップで開発をしているので
しょうか?
このような悩みは私だけでしょうか?

-- 
  Gunji Tsukuda  (tsukuda@....jp)
    Systems Development Laboratory, Hitachi, Ltd.