testng
매개 변수화 된 테스트
수색…
데이터 제공 업체
데이터 공급자를 사용하면 여러 테스트 입력을 테스트 내에서 실행할 수 있습니다. 숫자가 올바르게 두 배로되었는지 확인하는 테스트를 고려해 보겠습니다. 데이터 공급자를 만들려면 @DataProvider
주석이 붙은 Object[][]
또는 Iterator<Object[]>
를 반환하는 정적 메서드를 제공합니다.이 메서드는 @DataProvider
주석으로 주석 처리되며 속성 name
은 공급자.
import org.testng.annotations.DataProvider;
public class DoublingDataProvider {
public final static String DOUBLING_DATA_PROVIDER = "doublingDataProvider";
@DataProvider(name = DOUBLING_DATA_PROVIDER)
public static Object[][] doubling() {
return new Object[][]{
new Object[]{1, 2},
new Object[]{2, 4},
new Object[]{3, 6}
};
}
}
위의 경우 각 Object[]
는 단일 테스트 케이스에 대한 데이터 세트를 나타냅니다. 여기서 두 배가되는 숫자와 두 배가 된 후 예상 값이 이어집니다.
데이터 공급자를 사용하려면 테스트의 dataProvider
속성을 공급자 이름으로 채 웁니다. 공급자 메서드가 테스트 클래스 나 기본 클래스 외부에 정의 된 경우 dataProviderClass
속성도 지정해야합니다. 테스트 메소드는 테스트 케이스 설명의 요소에 해당하는 매개 변수를 가져야합니다. 여기에는 두 개의 int가 있습니다.
import org.testng.annotations.Test;
import static org.testng.Assert.assertEquals;
public class DoublingTest {
@Test(dataProvider = DoublingDataProvider.DOUBLING_DATA_PROVIDER, dataProviderClass = DoublingDataProvider.class)
public void testDoubling(int number, int expectedResult) {
assertEquals(number * 2, expectedResult);
}
}
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow