@Override public void onFinish(ITestContext context) { for (ITestNGMethod method : context.getAllTestMethods()) { Set<ITestResult> passed = context.getPassedTests().getResults(method); Set<ITestResult> skipped = context.getSkippedTests().getResults(method); Set<ITestResult> failed = context.getFailedTests().getResults(method); Set<ITestResult> failedWithinSuccess = context.getFailedButWithinSuccessPercentageTests().getResults(method); if (!passed.isEmpty() && !skipped.isEmpty()) { context.getSkippedTests().removeResult(method); } if (((!failedWithinSuccess.isEmpty()) || (!failed.isEmpty())) && !skipped.isEmpty()) { context.getSkippedTests().removeResult(method); } } } }
context.getFailedTests().removeResult(result); context.getSkippedTests().removeResult(result); context.getPassedTests().removeResult(result);
result.getTestContext().getPassedTests().removeResult(result); result.getTestContext().getFailedTests().addResult(result, result.getMethod());
returnValue.removeResult(method);
public class MyResultListener implements ISuiteListener{ @Override public void onStart(ISuite suite) { // TODO Auto-generated method stub } @Override public void onFinish(ISuite suite) { Map<String,ISuiteResult> resultMap = suite.getResults(); for(Map.Entry<String, ISuiteResult> ent :resultMap.entrySet()) { ISuiteResult res = ent.getValue(); IResultMap failedTestMap = res.getTestContext().getFailedTests(); IResultMap passTestMap = res.getTestContext().getPassedTests(); for(ITestResult testResult :failedTestMap.getAllResults()){ if(testResult.getThrowable().getClass().equals(new MyOwnException())){} System.out.println("My Own exception thrown"); failedTestMap.removeResult(testResult); passTestMap.addResult(testResult, testResult.getMethod()); } } } }
/** * Remove retrying failed test cases from skipped test cases. * * @param tc * @param map * * @return */ private void removeIncorrectlySkippedTests(final ITestContext tc, final IResultMap map) { final List<ITestNGMethod> failsToRemove = new ArrayList<ITestNGMethod>(); final IResultMap returnValue = tc.getSkippedTests(); for (final ITestResult result : returnValue.getAllResults()) { for (final ITestResult resultToCheck : map.getAllResults()) { if (resultToCheck.getMethod().equals(result.getMethod())) { failsToRemove.add(resultToCheck.getMethod()); break; } } for (final ITestResult resultToCheck : tc.getPassedTests().getAllResults()) { if (resultToCheck.getMethod().equals(result.getMethod())) { failsToRemove.add(resultToCheck.getMethod()); break; } } } for (final ITestNGMethod method : failsToRemove) { returnValue.removeResult(method); } skippedTests.put(tc.getName(), tc.getSkippedTests()); }