mocks y dobles

Post on 13-Apr-2017

46 Views

Category:

Engineering

0 Downloads

Preview:

Click to see full reader

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