mocks y dobles
Post on 13-Apr-2017
46 Views
Preview:
TRANSCRIPT
MOCKS Y DOBLES PARA PRUEBAS
ANDREÍNA ROMEROandreina.romero@ceiba.com.co
NO USA DOBLES
¿Para qué se utilizan?
OBJETO REAL
DOBLEOBJETO A PROBAR
{ acciones1(); accionesDeColaborador(); acciones2(); acciones3();
}
{ unaAccionDeColaborador(); otraAccionDeColaborador();}
Un ejemplo
Un ejemplo
Test Dobles al rescate
Un ejemplo
Test Double
Test Stub Fake Object Test Spy Mock Object Test Dummy
Stubs
Stub: a small piece
Un ejemplo de Stub
Un ejemplo de Stub
Un ejemplo de Stub
Fake
Fake: not what it seems to be
Un ejemplo de Fake
Un ejemplo de Fake
Un ejemplo de Fake
Spy
Spy: someone who secretly watches other people
No usar Spy en un código bien diseñado
Un ejemplo de Spy
Un ejemplo de Spy
Un ejemplo de Spy
Mock
Mock: to imitate or mimic
Un ejemplo de Mock
Un ejemplo de Mock
Un ejemplo de Mock
Un ejemplo de Mock
Dummy
Dummy: an imitation or copy of something, such as for use in a display
Un ejemplo de Dummy
Resumen
Tiene una lógica sencilla de procesamiento, se puede usar para agilizar las pruebas
Fake
Resumen
Se pueden reemplazar algunos comportamientos y el resto no está implementado, fallará inmediatamente si no se obtiene lo que se espera.
Mock
Resumen
Es un objeto valor, no sustituye al objeto colaborador
Dummy
Resumen
Se pueden reemplazar algunos comportamientos y el resto llama a los métodos reales
Spy
Resumen
Quemar datos a retornar sin una lógica de procesamiento. Es decir, siempre retorna el mismo valor para una entrada determinada
Stub
● Cada herramienta de mock tiene su estilo
● Facilitar la inyección de los objetos colaboradores para permitir el uso de dobles en las pruebas.
● Ejemplos aqui:
https://github.com/andreinaromero/doubletest
top related