6

プロジェクトには、それぞれが複数のテスト メソッドを含む複数のテスト クラスがあります。これらの各テスト クラスを実行する前に、データベース接続を作成したいとします。個々のテスト クラス、複数のテスト クラス、またはテスト スイートを実行するかどうかに関係なく、接続を確立する必要があります。最も重要なことは、複数のテスト クラスの場合、このステップを何度も呼び出すべきではないということです。実行しているテスト クラスの数に関係なく、接続は 1 回だけ行う必要があります。

この問題に取り組むための設計や JUnit のヒントを提案していただけますか?

4

3 に答える 3

4

テスト スイートでクラスを実行できます。この質問と提供された回答を参照してください。

または、設計を変更し、@BeforeClassアノテーションを使用して、各テスト クラスの前にセットアップを 1 回実行します。

場合によっては、いくつかのテストで計算コストの高いセットアップを共有する必要があります (データベースへのログインなど)。これはテストの独立性を損なう可能性がありますが、場合によっては必要な最適化です。public static void no-arg メソッドに @BeforeClass のアノテーションを付けると、クラス内のテスト メソッドの前に 1 回実行されます。スーパークラスの @BeforeClass メソッドは、現在のクラスの前に実行されます。

于 2013-08-27T09:01:20.750 に答える
0

spring-test を使用している場合は、ここで採用されている手法を使用できます: Spring Test を使用して DBUnit テスト データをケースごとに 1 回ロードする方法

于 2013-08-27T21:56:19.417 に答える