factory.setHandler(handler);
factory.setSuperclass(AbstractThing.class);
Class[] sig = {};
Object[] args = {};
AbstractThing proxy = (AbstractThing) factory.create(sig, args);
proxy.method1();
assertEquals("method1Count", 1, athing.getMethod1Count());
proxy.method2("testInterfaceProxy");
assertEquals("method2Count", 1, athing.getMethod2Count());
proxy.method3(athing);
assertEquals("method3Count", 1, athing.getMethod3Count());