tdd - primeros pasos

13
TDD Primeros Pasos

Upload: alejandro-perez-garcia

Post on 14-Jul-2015

572 views

Category:

Technology


1 download

TRANSCRIPT

TDD

Primeros Pasos

● @alejandropgarci

● Socio fundador y CTO de Autentia (www.autentia.com)

● Creadores y colaborador en www.adictosaltrabajo.com

Alejandro Pérez García

TDD

● Test

● Driven

● Development

● Diseño

● Dirigido

● por Pruebas

SUT

Subject/System Under Testo

"El tipo que estamos intentando probar"

Fixture

Estado fijo inicial sobre el que se ejecuta la prueba

Dobles de pruebas

● Double - Se hace pasar por un colaborador del SUT.

● Dummy - Argumento, pero no se usa nunca realmente.

● Fake - Implementación real, pero suele ser un atajo inapropiado para producción.

● Stub - Devuelve datos predefinidos (entrada).

● Spy - Graba llamadas a colaboradores (salida).

● Mock - Stub + Spy

● Pero ...

... a quien le importa ?!?!?!?!

la nomenclatura es importante, pero no es el objetivo, no nos peleemos por ella ;-)*

*

Lo importante es tener claro que se quiere probar

(SUT)

Nunca pruebes estado,prueba comportamiento!

Si escribes las pruebas antes que el SUT, tendrás mejores

pruebas y mejores SUT

Malos olores

● Fixture muy complejo

● Uso de librerías del estilo de PoweMock

● Código difícil de probar

● Muchos asserts en la misma prueba

● Pruebas frágiles

● Pruebas lentas

● No hay pruebas automáticas

Practica, practica, practica, ...