@Test public void mockAllClassesImplementingAnInterfaceUsingNamedMockUpWithInvocationParameter() { TestInterface impl1 = new TestInterface() { @Override public String getData() { return "1"; } }; TestInterface impl2 = new TestInterface() { @Override public String getData() { return "2"; } }; new MockTestInterface(); String mocked1 = impl1.getData(); String mocked2 = impl2.getData(); assertEquals("mocked1", mocked1); assertEquals("mocked2", mocked2); }