В TestNG в @AfterMethod как узнать результат теста? - PullRequest
1 голос
/ 25 июня 2009

У меня есть несколько тестовых классов TestNG, которые все расширяют один базовый класс AbstractIntegrationTest. В суперклассе у меня есть метод commonAfterMethod, который вызывается после каждого метода тестирования и выполняет некоторую очистку.

В этом методе я хочу что-то сделать в зависимости от результата теста, например, если тест не пройден, я хочу выгрузить тестовые данные в файл для дальнейшего изучения. Проблема в том, что мне нужно сделать это точно в commonAfterMethod, потому что он выполняет откат базы данных, а затем данные теряются.

Thanx

Ответы [ 2 ]

2 голосов
/ 31 августа 2009

Возможно, вы можете вместо этого что-нибудь сделать с тестовым слушателем? См. ITestListener и IInvokedMethodListener .

0 голосов
/ 30 июля 2014

Передайте объект ITestResult в методе afterMethod.

@AfterMethod()
public void afterMethod(ITestResult result){
    if(!result.isSuccess()){
        //Do stuff here if it failed
    }
}
...