あひさめ
@a_hisame
TDDなう。 内部メソッドのテストをしたいんだけれど、そのメソッドのパラメタがコンストラクタの物をそのまま利用するものであった場合、テストコードに迷い中。
2010-04-21 13:31:16
あひさめ
@a_hisame
Hoge hoge = new Hoge( new String[]{"abc", "bbb"} ); hoge.method( /* コンストラクタの引数*/ ); で methodはHogeのコンストラクタ内で呼ばれる場合、どんなコードを記述すべきだろうか
2010-04-21 13:32:34
ぐるぐる系SQL
@bleis
@a_hisame そのメソッドをテストしたいのかコンストラクタをテストしたいのか。そのメソッドがprivateなら無理してテストする必要ないんじゃ? [TDDBC名古屋7/10,11予定]
2010-04-21 13:34:40
あひさめ
@a_hisame
@bleis 正直privateでいいんだけれどねー。 テストした方が安全な気がして・・・・・・この辺りのテストする/しないの勘所が難しい
2010-04-21 13:35:58
あひさめ
@a_hisame
@bleis まあ、あとはpackage privateレベルにして、private無しでも良いかなと思いつつ処理してるのもある。 現状privateなし
2010-04-21 13:36:36
ぐるぐる系SQL
@bleis
@a_hisame 今のクラスの、そのメソッドで初期化するフィールドをまとめてクラスに抽出すればおk [TDDBC名古屋7/10,11予定]
2010-04-21 13:40:21
ぐるぐる系SQL
@bleis
@a_hisame コンストラクタ内からメソッド呼んじゃう時点で、イミュータブル性の保障できないし(finalフィールドに出来ない)、まとめてクラスにしちゃってもいいんじゃないかな。いや、詳細知らんからわからんけど [TDDBC名古屋7/10,11予定]
2010-04-21 13:41:50