Uso de JMockit para simular implementaciones de interfaz con conexión automática

Estamos escribiendo pruebas de JUnit para una clase que utiliza Spring autowiring para inyectar una dependencia que es una instancia de una interfaz. Dado que la clase bajo prueba nunca crea una instancia explícita de la dependencia o la ha pasado en un constructor, parece que JMockit tampoco se siente obligado a instanciarla.

Hasta ahora hemos estado usando SpringRunner para tener dependencias simuladas de carga de Spring para nosotros, lo cual funciona. Dos cosas que no nos gustan de esto son 1) el marco de Spring debe cargarse e inicializarse cada vez que se ejecutan las pruebas, lo que no es exactamente rápido, y 2) nos vemos obligados a crear explícitamente todas las dependencias simuladas como clases reales, algo que JMockit ayuda a eliminar.

Aquí hay un ejemplo simplificado de lo que estamos probando:

public class UnitUnderTest {

   @Autowired
   ISomeInterface someInterface;

   public void callInterfaceMethod() {

      System.out.println( "UnitUnderTest.callInterfaceMethod calling someInterface.doSomething");
      someInterface.doSomething();
   }

}

Entonces, la pregunta es, ¿hay alguna manera de que JMockit cree un simulacro?someInterface?

Respuestas a la pregunta(5)

Su respuesta a la pregunta