Please enable JavaScript.
Coggle requires JavaScript to display documents.
Tema 2.3: Pruebas de Unidad (Test Doubles) - Coggle Diagram
Tema 2.3: Pruebas de Unidad (Test Doubles)
Aislar el SUT (System Under Test) de sus dependencias
Dependencias y stubs
Dependencia
Componentes exetrnos al SUT cuya logica no es la sujeta a prueba
Stub
Simula dependencia real haciendo más controlable el entorno de prueba
Inyección de stubs
Constructor
: El stub se pasa como parámetro del constructor.
Método set
: El stub se asigna mediante un método público.
Alternativa más flexible, pasar Interfaz es opcional, sin embargo, podría condicionar el diseño
Clase fábrica
: El stub se devuelve desde una clase estática que actúa como proveedor de dependencias.
Diseño MUY limpio (modular, legible, mantenible)
El código de prueba (inyector) debe configurar la clase fábrica
Método fábrica
: Se redefine en una subclase un método que crea la dependencia, retornando un stub durante las pruebas.
Resumen
El uso de interfaces y capas de indirección facilita el diseño modular y la prueba unitaria.
Los stubs permiten pruebas más controladas y fiables.
El patrón factory favorece una clara separación entre el código de producción y el de prueba.
Estas prácticas están alineadas con los principios SOLID y fomentan un software más mantenible.