統合テスト (フロント エンド + バック エンド) またはデータベース レイヤーに対して単体テストを実行するかどうかは、あなたの質問からは明らかではありません。
統合テストを作成できるツールが必要な場合は、間違いなくSeleniumを検討する必要があります。Selenium を使用すると、Web サイト (JSP ページ) をナビゲートし、ページ上の要素が存在するか、またはいくつかの値と等しいことをアサートするだけで、機能テストを生成できます。
Selenium には、基本的にコードを生成するFirefox プラグインが付属しています。ブラウザでテストを再生するか、Java コードとしてエクスポートして、テスト スイートの一部にすることができます。Selenium は非常に貴重なツールです。
Selenium のようなツールを使用することの欠点は、テスト スイートを実行する前にアプリケーションをどこかにデプロイする必要があることです。Selenium を使用して生成された自動テストを実行する予定がある場合、これが制限になる可能性があります。
データベース アクセス コード (DAO、データ アクセス層) のテストのみに関心がある場合は、DBUnit が最適なツールです。通常、DBUnit は、テスト前にデータベース テーブルを初期化するために使用されますが、それほど頻繁ではありませんが、データベース コンテンツに対してアサーションを実行するために使用されます。DBUnit は XML ベースの形式を使用して、データベースに挿入されるデータを表します。
データベースに事前入力するデータを含む XML ファイルは、通常、ビルド スクリプト (Ant、Maven など) によって、または単体テスト コードで直接トリガーされます。私は両方のアプローチを使用しましたが、コードの構造とデータベースへのアクセス方法 (Hibernate、Spring + Hibernate、JDBC...) に大きく依存します。
データベースがそれほど大きくない場合は、テスト スイートを実行する直前にデータを入力することをお勧めします。または、すべてのテストの前に、テストに関心のあるテーブルのみを入力することもできます。
これは、データベースのテスト戦略を簡素化するために DBUnit の上で使用できる追加のライブラリです。始めるためのリファレンスとして使用できると思います:
http://www.unitils.org/tutorial.html#Database_testing
DBUnit の基本的な仕組みを示す別のリンク (かなり古い、2004 年) を次に示します。
http://onjava.com/pub/a/onjava/2004/01/21/dbunit.html