TestNG retryAnalyzer działa tylko wtedy, gdy jest zdefiniowany w metodach @Test, nie działa w klasie '@Test
Działa to zgodnie z założeniami, test kończy się niepowodzeniem (z powodu haltTesting ()) i jest powtarzany 2x
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();
}
}
ale ponieważ mam wiele testów w jednej klasie, zdefiniowałem repeatAnalyzer na poziomie klasy
@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();
}
}
ale wtedy test nie jest powtarzany, dokumentacja mówi:
Efektem adnotacji @Test na poziomie klasy jest przekształcenie wszystkich publicznych metod tej klasy w metody testowe, nawet jeśli nie są one opatrzone adnotacjami. Nadal możesz powtórzyć adnotację @Test na metodzie, jeśli chcesz dodać pewne atrybuty.
Czy to powinno być możliwe, czy spodziewam się złego wyniku?