Un "stub" es una implementación de una interfaz que existe para proporcionar datos / una respuesta de algún tipo. Por ejemplo:
- un conjunto de datos
- lista de usuarios
- un archivo XML
Normalmente, esto lo proporcionaría otro servicio (ya sea un servicio web, otra aplicación, una base de datos), pero para mejorar la capacidad de prueba del código, los resultados son "falsos".
Un beneficio importante de esto es que permite hacer afirmaciones en pruebas unitarias basadas en los datos esperados. Si surgen errores debido a errores de datos, entonces se pueden agregar pruebas fácilmente, crear un nuevo stub (replicando el error de datos) y producir un código para corregir el error.
Los stubs se diferencian de los Mocks en que se utilizan para representar y probar el estado de un objeto, mientras que un Mock prueba su interacción .