Всем привет, кто использует RetryAnalyzer для перезапуска упавших тестов?
Все работало на версии testng 6.9.13.6 , обновил до 7.1.0 перестало.
Если запускать на прямую @Test(retryAnalyzer = Retry.class) работает. А через testng listeners не хочет(
public class AnnotationTransformer implements IAnnotationTransformer {
@Override
public void transform(ITestAnnotation annotation, Class testClass, Constructor testConstructor,
Method testMethod) {
annotation.setRetryAnalyzer(RetryAnalyzer.class);
}
public class RetryAnalyzer implements IRetryAnalyzer {
private int count = 0;
@Override public boolean retry(ITestResult iTestResult) {
if (!iTestResult.isSuccess()) {
int maxTry = 2;
if (count < maxTry) {
count++;
iTestResult.setStatus(ITestResult.FAILURE);
iTestResult.getTestContext().getFailedTests().removeResult(iTestResult);
return true;
} else {
iTestResult
.setStatus(ITestResult.FAILURE);
}
} else {
iTestResult
.setStatus(ITestResult.SUCCESS);
}
return false;
}
}
Добавил листенер в testng:
<listeners>
<listener class-name="utils.AnnotationTransformer"/>
</listeners>