2014-12-28 3 views
1

Как выполнить только те тесты, которые были неудачны. Используя «IRetryAnalyzer», мы можем повторно запустить неудавшиеся тесты за х раз. Как упоминалось здесь Restart failed test case automatically. Я также осуществил iTestListener сделать подсчет испытания более означает полный следуя Retry Only failed Tests и update test run count by implementing 'ITestListener'Повторить только определенные неудачные тесты с TestNG

Есть ли способ, чтобы повторно запустить ТОЛЬКО конкретные неудачные испытания.

Пример: Нам нужно выполнить только те тесты, которые были провалены из-за исключения NoSuchElementException и исключения Timeout.

Пожалуйста, найдите приведенный ниже снимок экрана, где всего 8 тестов не пройдены, и есть 6 тестов, которые потерпели неудачу из-за NoSuchElementException-1 и TimeoutException-5. enter image description here

Просьба помочь.

ответ

3

Вы можете попробовать, проверяя результат ваших тестов, таких как:

@Override 
public boolean retry(ITestResult result) { 
try { 
    if (result.getThrowable().toString() 
     .contains("NoSuchElementException")) // Checking for specific reasons of failure 
     if (retryCount < maxRetryCount) { 
      retryCount++; 
      return true; 
     } 
    return false; 
    } catch (Exception e) { 
     return false; 
    } 
} 

Поскольку каждый результат имеет атрибут m_throwable в случае исключения произошло, вы можете использовать его, чтобы получить задание сделано в классе Retry ,

+0

Супер .. Позвольте мне попробовать и вернуться .. Большое спасибо –

+0

Я применил ваше решение и теперь работаю как шарм. Еще раз спасибо. –

+0

Рад помочь !!! ... приветствия ... –

Смежные вопросы