본문으로 건너뛰기

@Repeat

AutoParams의 @Repeat 어노테이션은 단위 테스트를 여러 번 반복하는 간단한 방법을 제공하며, 매번 새로 생성된 임의의 테스트 데이터로 반복합니다. 이는 다양한 입력 조건에서 코드 조각이 예상대로 작동하는지 확인하고 싶을 때 특히 유용합니다.

사용 방법

@Repeat 기능을 사용하려면 매개변수화된 테스트 메서드에 @AutoSource@Repeat 어노테이션을 함께 첨부해야 합니다. @Repeat 어노테이션의 repeat 속성은 테스트가 반복될 횟수를 지정하는 정수 값을 받습니다.

다음은 그 예입니다.

@ParameterizedTest
@AutoSource
@Repeat(10)
void testMethod(int a, int b) {
// This test method will be executed ten times with different sets of 'a' and 'b' each time.
Calculator sut = new Calculator();
int actual = sut.add(a, b);
assertEquals(a + b, actual);
}

위의 예에서 testMethod 테스트는 10번 실행됩니다. 각 실행은 @AutoSource 어노테이션 덕분에 무작위로 생성된 새로운 값 세트가 ab에 적용됩니다. @Repeat(10)은 이 주기가 10번 실행되도록 하여 테스트 커버리지를 향상시킵니다.

혜택

  1. 다양한 테스트 데이터: @Repeat 기능을 사용하면 자동으로 생성된 다양한 입력 값에 대해 메서드를 테스트할 수 있습니다.
  2. 수동 작업 감소: 여러 테스트 데이터 세트를 수동으로 지정하거나 테스트 내에서 루프를 만들 필요가 없습니다.
  3. 테스트 견고성 향상: 다양한 데이터로 테스트를 여러 번 반복하면 예외 사례를 발견하고 소프트웨어의 안정성을 향상할 수 있습니다.

@Repeat 기능을 사용하면 최소한의 노력으로 테스트 모음의 포괄성과 신뢰성을 높일 수 있습니다.