diff --git a/testable-core/src/main/java/com/alibaba/testable/core/util/InvokeRecordUtil.java b/testable-core/src/main/java/com/alibaba/testable/core/util/InvokeRecordUtil.java index 0ec0b27..1b82827 100644 --- a/testable-core/src/main/java/com/alibaba/testable/core/util/InvokeRecordUtil.java +++ b/testable-core/src/main/java/com/alibaba/testable/core/util/InvokeRecordUtil.java @@ -22,6 +22,10 @@ public class InvokeRecordUtil { StackTraceElement mockMethodTraceElement = Thread.currentThread().getStackTrace()[INDEX_OF_TEST_CLASS]; String mockMethodName = mockMethodTraceElement.getMethodName(); MockContext mockContext = MockContextUtil.context.get(); + if (mockContext == null) { + // mock method not invoked from test case, e.g. in static block + return; + } String testClass = mockContext.testClassName; String testCaseName = mockContext.testCaseName; if (isConstructor) { diff --git a/testable-core/src/main/java/com/alibaba/testable/core/util/MockContextUtil.java b/testable-core/src/main/java/com/alibaba/testable/core/util/MockContextUtil.java index 7b0571f..c9855dc 100644 --- a/testable-core/src/main/java/com/alibaba/testable/core/util/MockContextUtil.java +++ b/testable-core/src/main/java/com/alibaba/testable/core/util/MockContextUtil.java @@ -36,7 +36,8 @@ public class MockContextUtil { } public static Map parameters() { - return MockContextUtil.context.get().parameters; + MockContext mockContext = MockContextUtil.context.get(); + return mockContext == null ? new HashMap() : mockContext.parameters; } }