JUnitでは、1つのテストケース内で複数のアサーションを実行することができます。これは、1つのメソッド内で複数のテストをまとめて実行する場合や、1つのテストケースで複数の条件を検証する場合に便利です。
以下に、複数のアサーションを行う方法の一般的なパターンをいくつか示します。
assertAll
メソッドを使用する方法: JUnit 5以降では、assertAll
メソッドを使用して複数のアサーションをまとめて実行することができます。このメソッドは、すべてのアサーションが実行されるまでエラーをキャプチャし、最終的にすべてのエラーメッセージを表示します。以下は使用例です:
import static org.junit.jupiter.api.Assertions.*;
@Test
void multipleAssertions() {
assertAll("numbers",
() -> assertEquals(2, 1 + 1),
() -> assertEquals(4, 2 * 2),
() -> assertTrue(5 > 3)
);
}
- 複数の
assert
文を使用する方法: JUnit 4以前のバージョンでは、複数のassert
文を使用してアサーションを実行することが一般的でした。以下は使用例です:
import static org.junit.Assert.*;
@Test
void multipleAssertions() {
assertEquals(2, 1 + 1);
assertEquals(4, 2 * 2);
assertTrue(5 > 3);
}
いずれの方法を選んでも、テストケース内で複数のアサーションを実行することができます。これにより、一つのテストケースで複数の条件を検証することができます。
以上が、JUnitで複数のアサーションを行う方法の例です。これらの方法を使用することで、効果的なユニットテストを作成し、ソフトウェアの品質を向上させることができます。