Есть пачка тестов, после каждого теста выполняется какой-то код с помощью аннотации testNG @AfterTest
но мне необходимо выполнять разные действия после тестов в зависимости от того сфейлился тест при выполнении или прошел успешно
как такое можно реализовать?
Вариант 1.
Dependency Injection TestNG
@AfterMethod(alwaysRun = true)
public void afterTestMethod(ITestResult result) {
if(result.isSuccess()) {
// actions
}
else { // other action}
}
Или такую проверку if(result.getStatus() == ITestResult.SUCCESS)
2 лайка
Вариант 2.
IResultListener
public class MyClass implements IResultListener {
@Override
public void onConfigurationSuccess(ITestResult itr) {
}
@Override
public void onConfigurationFailure(ITestResult itr) {
}
@Override
public void onConfigurationSkip(ITestResult itr) {
}
@Override
public void onTestStart(ITestResult result) {
}
@Override
public void onTestSuccess(ITestResult result) {
// actions
}
@Override
public void onTestFailure(ITestResult result) {
// other actions
}
@Override
public void onTestSkipped(ITestResult result) {
}
@Override
public void onTestFailedButWithinSuccessPercentage(ITestResult result) {
}
@Override
public void onStart(ITestContext context) {
}
@Override
public void onFinish(ITestContext context) {
}
2 лайка