From a9c500ed0ca53b2142a8256841b566f450bc4108 Mon Sep 17 00:00:00 2001 From: lkalina Date: Fri, 21 Nov 2025 13:46:27 +0100 Subject: [PATCH] Fix exception handling in GraphOrchestrator#afterExecute method to show the exception coming from the TestNGFutureTask. --- .../org/testng/internal/thread/graph/GraphOrchestrator.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/testng-core/src/main/java/org/testng/internal/thread/graph/GraphOrchestrator.java b/testng-core/src/main/java/org/testng/internal/thread/graph/GraphOrchestrator.java index 3ddca247d..3703e93b3 100644 --- a/testng-core/src/main/java/org/testng/internal/thread/graph/GraphOrchestrator.java +++ b/testng-core/src/main/java/org/testng/internal/thread/graph/GraphOrchestrator.java @@ -75,7 +75,11 @@ private void mapNodeToParent(List freeNodes) { private void afterExecute(IWorker r, Throwable t) { try (AutoCloseableLock ignore = internalLock.lock()) { - setStatus(r, computeStatus(r)); + if (t != null){ + Logger.getLogger(GraphOrchestrator.class).error(t.getMessage(), t); + } else { + setStatus(r, computeStatus(r)); + } if (graph.getNodeCount() == graph.getNodeCountWithStatus(IDynamicGraph.Status.FINISHED)) { service.shutdown(); } else {