TestNG retryAnalyzer funktioniert nur, wenn in den Methoden @Test definiert, nicht in der Klasse '@Test
Dies funktioniert wie angenommen, der Test schlägt fehl (aufgrund von haltTesting ()) und wird 2x wiederholt
public class A0001_A0003Test extends TestControl {
private Kunde kunde = Kunde.FR_WEHLITZ;
@Test(retryAnalyzer = TestRepeat.class, groups = {TestGroups.FAILED}, description = "verify adress")
public void testkundenDaten_Angaben() throws Exception {
bifiTestInitial();
testActions.selectKunde(kunde);
haltTesting();
}
}
aber da ich mehrere tests in einer klasse habe, habe ich den repeatAnalyzer auf klassenebene definiert
@Test(retryAnalyzer = TestRepeat.class)
public class A0001_A0003Test extends TestControl {
private Kunde kunde = Kunde.FR_WEHLITZ;
@Test(groups = {TestGroups.FAILED}, description = "verify adress")
public void testkundenDaten_Angaben() throws Exception {
bifiTestInitial();
testActions.selectKunde(kunde);
haltTesting();
}
}
aber dann wird der Test nicht wiederholt, die Dokumentation sagt:
Die Wirkung einer @ Test-Annotation auf Klassenebene besteht darin, dass alle öffentlichen Methoden dieser Klasse zu Testmethoden werden, auch wenn sie nicht mit Annotationen versehen sind. Sie können die @ Test-Annotation für eine Methode immer noch wiederholen, wenn Sie bestimmte Attribute hinzufügen möchten.
Sollte es also möglich gewesen sein oder erwarte ich das falsche Ergebnis?