JUnit 5繰り返しテスト - @RepeatedTest
@RepeatedTestでテストコードを繰り返し実行する方法
繰り返しテスト
メソッドに@RepeatedTestを指定すると、valueに指定した回数だけテストが繰り返される。
繰り返される各テストのデフォルト表示名は、repetition <現在の繰り返し回数> of <総繰り返し回数>になる。
表示名の指定
@RepeatedTestのname属性で、繰り返しテストの表示名を指定できる。表示名には専用プレースホルダーを使用できる。
displayName: テストメソッドの表示名。デフォルトはメソッド名で、@DisplayNameが指定されていればそちらが使われる。currentRepetition: 現在の繰り返し回数。値は1から始まる。totalRepetitions: 総繰り返し回数。
事前定義された長い表示名パターンは{displayName} :: repetition {currentRepetition} of {totalRepetitions}である。
繰り返し情報を受け取る
@RepeatedTestが付いたテストメソッドは、現在の繰り返し情報を持つRepetitionInfoオブジェクトを引数で受け取れる。getCurrentRepetition()とgetTotalRepetitions()を提供する。
RepetitionInfoは@BeforeEach、@AfterEachでも受け取れる。ただし通常の@Testメソッドが混在していると、そのテストではRepetitionInfoを解決できずランタイムエラーになる。