[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 メーリングリストの案内