[java] JUnitParams에서의 테스트 어플라이어(Applier) 사용 방법은 어떻게 되나요?

테스트 어플라이어(Applier)는 @Applier 어노테이션의 값을 처리하는 방법을 정의합니다. 어플라이어는 org.junit.runners.Parameterized.Parameters 메서드의 반환값 또는 테스트 클래스 필드로 정의됩니다. 어플라이어는 JUnitParams가 해당 값을 하나의 테스트로써 인식하고 실행하는 방법을 결정합니다.

@Applier 어노테이션은 org.junit.runner.Runner 인터페이스를 구현하는 어플라이어 클래스를 지정합니다. 디폴트 어플라이어인 org.junit.runners.Parameterized 클래스 대신 사용하려는 어플라이어를 특정 클래스로 정의하여 사용할 수 있습니다.

아래는 JUnitParams에서의 테스트 어플라이어 사용 방법의 예시입니다.

// 어플라이어 클래스 작성
public class CustomApplier implements Runner {

    @Override
    public void run(RunNotifier notifier) {
      // 테스트 실행 로직 작성
    }

}

// 테스트 클래스에 어플라이어 적용
@RunWith(CustomApplier.class)
public class MyTest {

    @TestData
    public static Collection<Object[]> testData() {
        // 테스트 데이터 생성 로직 작성
    }

    @Test
    @Parameters
    public void myTestMethod(int param1, String param2) {
        // 테스트 실행 로직 작성
    }

}

위 코드에서 MyTest 클래스는 CustomApplier 어플라이어를 사용하도록 @RunWith 어노테이션을 설정했습니다. CustomApplier 클래스는 Runner 인터페이스를 구현하고, run 메서드에서 어플라이어 동작을 정의합니다. MyTest 클래스는 @Parameters 어노테이션을 통해 매개변수를 적용하고, 이를 myTestMethod 메서드가 테스트하는 예제입니다.

JUnitParams의 테스트 어플라이어 사용 방법에 대해 자세한 내용은 JUnitParams의 문서를 참고하시기 바랍니다.