Olores del código: test
Existen muchas cosas que no huelen bien en el código y a continuación vas a
poder ver las referentes a los test. Esta es una publicación
parte de una serie de publicaciones que haré referentes a olores del código.
Test
- Test insuficientes, ¿cuantos test debe tener mi suite? Siento tener
que decírtelo pero no hay una métrica para ello. Tienes que tener tantos test
como para probar todo lo que puede fallar. Aunque he escuchado decir que
normalmente con tener un 80% de la aplicación testada puede valer.
- Usa una herramientas de cobertura, existen herramientas que te hacen
análisis sobre la cobertura de tus test (a veces los propios IDE´s lo tienen
integrado). Estas te analizan que partes están cubiertas con un test y cuales
no, te hacen tener una visión de como está el proyecto.
- No te saltes los test triviales, en ocasiones puedes pensar que este
test es demasiado obvio como para comprobarlo. Pero la verdad es que este tipo
de test tienen más valor como documentación que como comprobación en sí mismo.
Hazlos y deja reflejado ese comportamiento.
- Un test ignorado es una pregunta sobre ambigüedad, a veces no tenemos
claro el comportamiento de algún detalle de comportamiento. Esto lo podemos
dejar reflejado como un test comentado o ignorado, de esta manera esta
cuestión queda reflejada en el código y será más fácil de solucionar.
- Testea condiciones del entorno, a menudo nos podemos encontrar delante
de una solución conrrecta pero ser el entorno quien nos genera errores. Es por
ello que hay que tener en cuenta las condiciones del entorno.
- Testear exhaustivamente cerca de los bugs, cuando encontramos un bug
en una función es muy probable que no se encuentre solo. Es por ello que una
vez encuentras un bug es recomendable testar esa función a fondo,
probablemente encuentres más errores.
- Los test deben de ser rápidos, un test lento es un test que no se va a
ejecutar. Cuando estás ejecutando la suite de test constantemente el test más
lento es el test que terminarás por saltar. Este hará que tu ritmo de trabajo
baje y te cansarás, por eso es mejor que los test sean lo más rápido posible.
Referencias
- Libro original sobre Clean Code, esta publicación corresponde con el
capítulo 17.