Index: [Article Count Order] [Thread]

Date:  15 Oct 2004 16:39:32 +0900
From:  Ryuji Hattori<hattori@....jp>
Subject:  [XP-jp:05080] Re: DbC on Java/C#...
To:  extremeprogramming-jp@....jp
Cc:  hattori@....jp
Message-Id:  <16751.32436.583000.5081@SHIKAKU
In-Reply-To:  katayama@....jp's message of "Fri, 15 Oct 2004 14:36:24	+0900" <JP2004101514362412.11151296@....jp>
References:  <200410150511.i9F5BmN27653@....jp>	<JP2004101514362412.11151296@....jp>
X-Mail-Count: 05080


どうも、はっとり@HZです。

In message "[XP-jp:05074] Re: DbC on Java/C#..."
    on 04/10/15, katayama@....jp <katayama@....jp> writes:
> 
> みなさんはじめまして、片山といいます。こんにちは。
> 
> > επιστημηです。細かなネタで申し訳なし。
> > 
> > xUnitでテストするとき、通常はpublicなメソッドを呼んで
> > その結果を検証するわけですが、時としてメソッドを呼んだ後
> > 'privateメンバが狂ってないか' あるいは 'privateメソッドは
> > 正しく実装されたか' を知りたくなるのです。
> 
> これは私も前から思っていました。みんなどうやっているのかな、と。
> どうしてもってときはリフレクション使ってますが、やっぱり結構面倒
> ですよね。インナークラスにテストケース実装という手は一時的には
> いいですが、テストは別パッケージに置いておきたいって時には使えないですし。
> インナークラス経由で公開という手もありますけど、工数も増えますし、
> 今ひとつ感はありますよね・・・

Java な場合ですが、個人的にはテストケースクラスの中に、
private メソッドを委譲したパブリックメソッドを持つ、元
のクラスから派生した内部クラスを使っています。まー確かに
今ひとつの感はあります。
ただ複数のテストケースから参照する場合は、外部から出す場
合もあります。ただしその場合は元のテスト対象クラスが肥大
化している可能性が高いのでリファクタリングの対象にしてな
るべく1クラス、1テストケースの原則は守ろうとしています。

-- 
******************************************************* 
服部 隆二(Ryuji Hattori)
belongs to Hitz 技術研究所(hattori@....jp)        
Real Address: 大阪市 大正区 船町 2丁目 11-11 
		 日立造船株式会社 技術研究所 制御情報技術研究室。
Tel: 06-6551-9806、Fax: 06-6551-9849
URL: http://www.tsunamigps.com	
*******************************************************