diff --git a/junitperf-core/src/main/java/com/github/noconnor/junitperf/statements/EvaluationTask.java b/junitperf-core/src/main/java/com/github/noconnor/junitperf/statements/EvaluationTask.java index 23705e3..f979b55 100644 --- a/junitperf-core/src/main/java/com/github/noconnor/junitperf/statements/EvaluationTask.java +++ b/junitperf-core/src/main/java/com/github/noconnor/junitperf/statements/EvaluationTask.java @@ -3,6 +3,7 @@ import com.github.noconnor.junitperf.statistics.StatisticsCalculator; import com.google.common.util.concurrent.RateLimiter; import lombok.Builder; +import lombok.extern.slf4j.Slf4j; import java.util.function.Supplier; @@ -11,6 +12,7 @@ import static java.util.concurrent.TimeUnit.MILLISECONDS; import static java.util.concurrent.TimeUnit.NANOSECONDS; +@Slf4j final class EvaluationTask implements Runnable { private final TestStatement statement; @@ -76,7 +78,7 @@ private void evaluateStatement(long startMeasurements) { } catch (InterruptedException e) { Thread.currentThread().interrupt(); } catch (Throwable throwable) { - // IGNORE + log.trace("Warmup error", throwable); } } else { @@ -85,6 +87,7 @@ private void evaluateStatement(long startMeasurements) { } catch (InterruptedException e) { Thread.currentThread().interrupt(); } catch (Throwable throwable) { + log.trace("Setup error", throwable); throw new IllegalStateException("Before method failed", throwable); } @@ -101,6 +104,7 @@ private void evaluateStatement(long startMeasurements) { stats.incrementErrorCount(); stats.addLatencyMeasurement(nanoTime() - startTimeNs); } + log.trace("Execution error", throwable); } try { @@ -108,6 +112,7 @@ private void evaluateStatement(long startMeasurements) { } catch (InterruptedException e) { Thread.currentThread().interrupt(); } catch (Throwable throwable) { + log.trace("Teardown error", throwable); throw new IllegalStateException("After method failed", throwable); } diff --git a/junitperf-junit5/src/main/java/com/github/noconnor/junitperf/JUnitPerfInterceptor.java b/junitperf-junit5/src/main/java/com/github/noconnor/junitperf/JUnitPerfInterceptor.java index a3fd4cc..9270aac 100644 --- a/junitperf-junit5/src/main/java/com/github/noconnor/junitperf/JUnitPerfInterceptor.java +++ b/junitperf-junit5/src/main/java/com/github/noconnor/junitperf/JUnitPerfInterceptor.java @@ -101,10 +101,13 @@ public void interceptTestMethod(Invocation invocation, test.setMeasurementsStartTimeMs(currentTimeMillis() + perfTestAnnotation.warmUpMs()); test.setContext(context); - SimpleTestStatement testStatement = () -> method.invoke( - extensionContext.getRequiredTestInstance(), - invocationContext.getArguments().toArray() - ); + SimpleTestStatement testStatement = () -> { + method.setAccessible(true); + method.invoke( + extensionContext.getRequiredTestInstance(), + invocationContext.getArguments().toArray() + ); + }; PerformanceEvaluationStatement parallelExecution = test.getStatementBuilder() .baseStatement(testStatement) @@ -198,7 +201,7 @@ private static void proceedQuietly(Invocation invocation) throws Throwable // Must be called for framework to proceed invocation.proceed(); } catch (Throwable e) { - // Ignore + log.trace("Proceed error", e); } }