Para una prueba de unidad, necesito burlarme de varias dependencias. Una de las dependencias es una clase que implementa una interfaz:Burlarse de una clase vs. burlarse de su interfaz
public class DataAccessImpl implements DataAccess {
...
}
necesito para configurar un objeto de burla de esta clase que devuelve algunos valores especificados cuando se proporcionan con algunos parámetros especificados.
Ahora, lo que no estoy seguro de, es decir si es mejor para burlarse de la interfaz o la clase, es decir
DataAccess client = mock(DataAccess.class);
vs
DataAccess client = mock(DataAccessImpl.class);
¿Hay alguna diferencia en lo que se refiere para probar? ¿Cuál sería el enfoque preferido?
Aquí hay otras ideas sobre clases de burlas. Lectura agradable, imho: http://stackoverflow.com/questions/1595166/why-is-it-so-bad-to-mock-classes – guerda