どうも、はっとり@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
*******************************************************