I looked at the source of com.kms.katalon.core.main.TestCaseExecutor
, Line#279-289 of Katalon Studio v9.0
public TestResult execute(FailureHandling flowControl) {
...
if (ErrorCollector.getCollector().containsErrors()) {
Throwable error = ErrorCollector.getCollector().getFirstError();
testCaseResult.setMessage(ExceptionsUtil.getStackTraceForThrowable(error));
logger.logError(testCaseResult.getMessage(), null, error);
return testCaseResult;
}
...
Please find that ErrorCollector.getCollector().getFirstError()
is called to pick the first Exception. The first Exception will be passed into a TestCaseResult, which will be passed to TestListenerās @AfterTestCasee
-annotated method.
As this line of code tells, Katalon Studio intentionally picks up only one Exception to be contained in the TestCaseContext. Katalon Studio is designed as such.