[java] JUnitParams에서의 테스트 공유 데이터 사용 방법은 어떻게 되나요?

JUnitParams를 사용하여 매개변수화된 테스트를 작성할 때는 @Parameters 어노테이션과 함께 테스트 메서드를 정의해야 합니다. 매개변수화된 테스트 메서드의 매개변수는 테스트 데이터를 나타내며, @Parameters 어노테이션에 테스트 데이터를 제공하는 메서드를 지정해야 합니다.

이때, 테스트 공유 데이터를 사용하기 위해 데이터를 제공하는 메서드를 정의할 수 있습니다. 이 메서드는 Iterable<Object[]>을 반환해야 하며, 각 Object[]는 테스트 메서드의 매개변수에 대응되는 값들로 구성됩니다.

@RunWith(JUnitParamsRunner.class)
public class MyTest {

  @Test
  @Parameters(method = "testData")
  public void myTest(int param1, String param2) {
    // 테스트 수행
  }

  private Iterable<Object[]> testData() {
    // 테스트 데이터 생성 및 반환
  }
}

위의 예제에서 testData() 메서드가 테스트 데이터를 생성하여 Iterable<Object[]> 형태로 반환하는 메서드입니다. 이 메서드는 @Parameters 어노테이션의 method 속성에 지정되어 있습니다.

testData 메서드 내에서는 테스트 데이터를 생성하고 각 Object[]에 매개변수 값들을 할당합니다. 이렇게 생성된 테스트 데이터는 JUnitParams에 의해 매개변수화된 테스트 메서드에 자동으로 주입되어 테스트 수행에 사용됩니다.

이와 같이 JUnitParams를 사용하여 매개변수화된 테스트에서 테스트 공유 데이터를 사용할 수 있습니다. 추가로 JUnitParams에는 다양한 매개변수화된 테스트 작성 방법이 제공되므로, 필요한 경우 공식 문서나 예제를 참고하여 더 자세한 사용법을 알아보세요.

참고 자료: