[Seasar-user:20664] Re: [S2JUnit4] 複数データソースのテストケースについて

小林正和 [E-MAIL ADDRESS DELETED]
2011年 3月 16日 (水) 06:56:49 JST


小林さん、中村さん

ありがとうございました。

中村さんのPostBindFieldsを使用してテストをしようと思います。

2011年3月15日22:16 Toshihiro Nakamura <[E-MAIL ADDRESS DELETED]>:
> 中村(taedium)です。
>
>> Excel ファイルごとに異なる DataSource に出力したい場合は、S2JUnit4 の
>> 事前データ登録機能を使わず、DataAccessorImpl#setDataSource() で対象となる
>> DataSource を設定した後、自分で DataAccessor の writeDb() 等を呼び出すなど
>> することになるかと思います。
>> # 違ってたらフォローお願い>中村さん
>
> 小林さんが記述されているように
> 事前データ登録機能を使わずDataAccessorを直接使うと柔軟にいろいろできます。
>
> しかし、事前データ登録機能を使いたいけど
> メソッドごとに使用するデータソースを使い分けたいということであれば、
> @PostBindFieldsを付与したメソッドで調整するのがいいと思います。
> (@PostBindFieldsを付与したメソッドは事前データ登録機能の処理よりも
> 先に呼び出されます)
>
> 以下の例では、setupDataSource()にて
> テストメソッドがfindByIdだったらdataSource2を
> 使用するという設定を行っています。
>
> @RunWith(Seasar2.class)
> public class HogeTest {
>    private TestContext ctx;
>    private SimpleDataAccessor dataAccessor;
>    private DataSource dataSource1;
>    private DataSource dataSource2;
>
>    @PostBindFields
>    public void setupDataSource() {
>        String methodName = ctx.getTestMethodName();
>        if ("findById".equals(methodName)) {
>            dataAccessor.setDataSource(dataSource2);
>        } else {
>            dataAccessor.setDataSource(dataSource1);
>        }
>    }
>
>    public void findById() {
>        ...
>    }
> }
>
> --
> Toshihiro Nakamura <[E-MAIL ADDRESS DELETED]>
>
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>



-- 
--------------
小林正和


Seasar-user メーリングリストの案内