Как выполнить неудачный сценарий автоматизации ios от Дженкинса - PullRequest
0 голосов
/ 27 февраля 2020

Я запускаю тесты на огурец в среде TestNG с помощью команды maven. Ежедневно я выполняю тестовые случаи от Дженкинса и составляю отчет о огурцах в Дженкинсе. (используя плагин для отчета о огурцах)

Я ищу решение для повторного запуска неудачных тестов в Jenkins, и оно должно дать окончательный отчет.

Пожалуйста, предоставьте мне подход для достижения этой цели.

1 Ответ

0 голосов
/ 27 февраля 2020

Одним из простых способов является использование IRetryAnalyzer в TestNG. Он повторно запустит неудачный тестовый пример.

В итоговом отчете, если повторный запуск пройден, тогда я буду отображаться как пройденный (изначально неудачный один показ как пропущенный)

, если повторный запуск также не удался , затем помечается как сбой.

пример:

 public class Retry implements IRetryAnalyzer {

private int count = 0;
private static int maxTry = 3;

@Override
public boolean retry(ITestResult iTestResult) {
    if (!iTestResult.isSuccess()) {                      //Check if test not succeed
        if (count < maxTry) {                            //Check if maxtry count is reached
            count++;                                     //Increase the maxTry count by 1
            iTestResult.setStatus(ITestResult.FAILURE);  //Mark test as failed
            return true;                                 //Tells TestNG to re-run the test
        } else {
            iTestResult.setStatus(ITestResult.FAILURE);  //If maxCount reached,test marked as failed
        }
    } else {
        iTestResult.setStatus(ITestResult.SUCCESS);      //If test passes, TestNG marks it as passed
    }
    return false;
}

}

Добавить в Testng. xml файл

Вы также можете добавить тест в

 @Test(retryAnalyzer = Retry.class)
...