Как использовать @DataProvider присутствует в другом классе
Как пользоваться @DataProvider
что присутствует в другом классе?
Я создал другой пакет и определил поставщиков данных рядом с каждым тестовым примером. Пожалуйста, поделитесь, как я могу использовать это в другом классе.
2 ответа
Решение
Вы можете использовать dataProviderClass
атрибут @Test
:
public class StaticProvider {
@DataProvider(name = "create")
public static Object[][] createData() {
return new Object[][] {
new Object[] { new Integer(42) }
};
}
}
public class MyTest {
@Test(dataProvider = "create", dataProviderClass = StaticProvider.class)
public void test(Integer n) {
// ...
}
}
Проверьте документацию для более подробной информации.
Если у вас есть уникальное имя метода dataProvider (createData), и если вы решили не давать имя после аннотации DataProvider, как показано ниже,
@DataProvider
public Object[][] createData(){
}
Затем вы можете использовать имя метода, как показано ниже,
@Test(dataProvider = "createData", dataProviderClass = StaticProvider.class)