Класс теста:
public class TestTest2 {
@DataProvider
public Object[][] data() {
return new Object[][]{{"22"}};
}
@Test(retryAnalyzer = TestListener.class, dataProvider = "data")
public void test1(String... p) {
System.out.println("this is test1 " + p[0]);
assert false;
}
}
Класс TestListener:
public class TestListener implements IRetryAnalyzer {
private int failCounter = 0;
@Override
public boolean retry(ITestResult result) {
return ++failCounter <= 2;
}
}
Если я запускаю этот тест, при повторной попытке я получаю ошибку
java.lang.IllegalArgumentException: несоответствие типа аргумента.
Если свойство dataProvider
аннотации @Test будет удалено,
IllegalArgumentException
не будет выброшено.Что происходит?