CLEAN CODE
HERRAMIENTAS
> Contenidos
1. Qu es un test unitario?
2. Cmo hacer tests
3. Tipos de Asserts
4. Por qu hacer tests?
> Qu es un test unitario?
Los tests unitarios son una
tcnica que permite comprobar
el correcto funcionamiento de
una unidad de cdigo.
> Qu es un test unitario?
Un test unitario es un
programa que comprueba que
parte de un programa hace lo
que debe.
> Qu es un test unitario?
Un test unitario es un
programa que comprueba que
parte de un programa hace lo
que debe.
> Qu es un test unitario?
Una funcin que verifica que
una funcin retorna el valor
esperado.
> Qu es un test unitario?
public class Converter {
public float convertPesetas (float euros) {
return euros * 166.386f;
}
public float convertEuros (float pesetas) {
return pesetas / 166.386f;
}
}
> Qu es un test unitario?
Mtodos a testear Tests
convertPesetas testConvertPesetas
convertEuros testConvertEuros
> Qu es un test unitario?
Se testean los mtodos pblicos
Tests independientes entre s
Debe automatizarse y repetirse
Deben cubrir todo lo posible
Nuevo rol: el tester.
> Cmo hacer tests?
> Tipos de asserts
assertEquals assertSame
assertNull assertNotSame
assertNotNull assertThat
assertTrue assertArrayEquals
assertFalse
> Por qu hacer tests?
Verifican el cdigo, obviamente.
Localizar errores
Se automatizan
Documentan el cdigo,
muestran cmo usarlo
Obliga a mejorar el cdigo!
Facilita los cambios en el cdgo
> Por qu hacer tests?
Mejoras en el cdigo
1. Obliga a refactorizar y mejorar
2. Te lleva a desacoplar
3. Te lleva a simplificar mtodos
> Por qu hacer tests?
Metodologas basadas en test
Tres leyes de TDD
1. No escribas cdigo de produccin hasta que no
tengas un test unitario que falle.
2. Escribe un test unitario con el cdigo justo para
que falle
3. Escribe el cdigo de produccin suficiente para
pasar ese test
http://agiledata.org/essays/tdd.html