2011-08-05 5 views
1

一般的に我々は、データを挿入するためにsetup()からの入力ファイルを与えているので、テストごとに毎回データを挿入し、最後にテスト後にクリアします。DAO層をテストするためのDbUnitフレームワーク

しかし、これらのデータはすべてのテスト用であり、テストの数が多いほどオーバーヘッドになります。 したがって、テスト固有の入力(xml)ファイルを与えて、その特定のファイルがsetUp()からDbUnitによって挿入されるようにすれば、オーバーヘッドが少なくなります。

ご迷惑をおかけして申し訳ございません。おかげさまで

答えて

1

あなたはSpringにタグ付けされていることに気がつき、org.springframework.test.context.TestExecutionListenerと書いて、必要なことをすることができます(AbstractTestExecutionListenerを拡張)。

beforeTestMethod(...)では、DbUnitを使用してデータをロードします。 TestContextを使用して、testClassまたはtestMethodに関する情報を取得し、ロードするデータセットに基づいて決定します。たとえば、新しい注釈を作成して、テストメソッドにロードするデータセットを指定することができます。

データセットをafterTestMethod(...)にアンロードします(トランザクションテストおよびトランザクションの一部として挿入されたデータを使用しない場合)。

(あなたがそれを使用して、トランザクションの一部を形成するために、データセットの挿入を希望している場合TransactionalTestExecutionListenerた後、それを指定することが重要)@TestExecutionListeners注釈 を使用してTestExecutionListenerを登録します。

これが役に立ちます。

関連する問題