@Factory
注释的方法有帮助。
您可以调用其他测试类的构造函数,然后访问@Test
,@Before*
和@After*
带注释的方法中的参数。
public class MainProvider {
@Factory(dataProvider = "main", dataProviderClass = MainProvider.class)
public Object[] prepare(ParameterType first, ParameterType second) {
return new Object[]{new SimpleTest(firstParameter, secondParameter)};
}
@DataProvider(name = "main")
public Iterator<Object[]> dataProvider() {
List<Object[]> parameters = new ArrayList<>();
//Fill it with your data (this can be, of course, in a loop):
parameters.add(new Object[] {parameter1, anotherParameter1});
parameters.add(new Object[] {parameter2, anotherParameter2});
return parameters.iterator();
}
}