[Seasar-user:18329] Re: [S2Container]インタフェース未作成時のテスト技法について
kubo
[E-MAIL ADDRESS DELETED]
2009年 8月 19日 (水) 15:28:25 JST
久保(jflute)です。
何が推奨されているか?という問いに対する答えじゃないですが、
参考までに自分がよくやっている方式を情報共有させて頂きます。
まず一つは、DBAもしくはデータ作成担当の人がDBのテストデータを
しっかりと事前に用意して、Mock無しで一気通貫でActionクラス
(or Pageクラス)のIn/Outをテストします。
この場合インターフェースがあろうがなかろうがあんまり関係がないです。
もう一つは、どうしてもとある処理をMockにしたいときは、
FooAction action = new FooAction();
action.setBarService(new BarService() {
public Xxx bar() {
return // 好きなように処理を変える
}
});
というように、対象メソッドをオーバーライドして、
そのテストケースに都合の良い処理に変更します。
インターフェースが無くても問題なく実装できます。
基本的には前者のやり方を主流としていますが、
ピンポイントでどうしてもってときに後者を使っています。
参考ということで。
2009/8/19 <[E-MAIL ADDRESS DELETED]>:
>
> お世話になっております。
>
> 小嶋と申します。
>
>
> Seasar2.4からインタフェースを作成しなくても
> 自動バインディング等が可能となり、
> Action, Service等、インタフェースを作成しない方式を
> 推奨しているとお聞きしました。
>
> そこで、インタフェースを作成していない場合の
> テスト技法についてご質問させてください。
>
> Serviceにてインタフェースを作成していないと仮定した場合、
> Action単体のUTを行う際のテスト技法はどのような方法を
> 推奨されているのでしょうか。
>
> Serviceのインタフェースが無いため、MockInterceptorを利用した
> テストが出来ないと認識しております。
>
> 上記ケースのテストを実施することが想定されるのであれば、
> あらかじめインタフェースを作成しておく設計にしておかなければならないのでしょうか?
>
> よろしくお願いいたします。
>
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>
>
Seasar-user メーリングリストの案内