diff --git a/gae-interop-testing/gae-jdk7/src/main/java/io/grpc/testing/integration/OkHttpClientInteropServlet.java b/gae-interop-testing/gae-jdk7/src/main/java/io/grpc/testing/integration/OkHttpClientInteropServlet.java index 42255bb9e2..d7d7632a10 100644 --- a/gae-interop-testing/gae-jdk7/src/main/java/io/grpc/testing/integration/OkHttpClientInteropServlet.java +++ b/gae-interop-testing/gae-jdk7/src/main/java/io/grpc/testing/integration/OkHttpClientInteropServlet.java @@ -60,12 +60,11 @@ public final class OkHttpClientInteropServlet extends HttpServlet { // We can not use JUnit because it tries to spawn backgrounds threads. // GAE+JDK7 does not allow arbitrary background threads. // Let's use reflection to run test methods. - Tester tester = new Tester(); List befores = new ArrayList<>(); List afters = new ArrayList<>(); List testMethods = new ArrayList<>(); int ignored = 0; - for (Method method : tester.getClass().getMethods()) { + for (Method method : Tester.class.getMethods()) { if (method.getAnnotation(Test.class) != null) { if (method.getAnnotation(Ignore.class) != null) { ignored++; @@ -82,6 +81,8 @@ public final class OkHttpClientInteropServlet extends HttpServlet { StringBuilder sb = new StringBuilder(); int failures = 0; for (Method method : testMethods) { + // JUnit creates a new instance per test method, we will emulate that behavior. + Tester tester = new Tester(); try { for (Method before : befores) { before.invoke(tester);