En mi curro llevamos ya un par de años usando TDD y bueno, al principio parece un coñazo hacer unit tests y demás pero es util de la leche. Por ejemplo hace año y medio hicimos una app y se publicó en el market y demás. Hace cosa de 3 meses la retomamos para hacer una actualización y claro, acuérdate tú de lo que hiciste hace un año y medio! aparte, una de las cosas que había que actualizar era por ejemplo llamadas al servidor que devolvían los mismos datos (osea el método de "manager" era el mismo) pero internamente se trataban diferente. Pues nada mejor que volver a ejecutar los unit tests para ver si sigue funcionando como debería
Fuimos el único proyecto que empezamos a usarlo y fuimos dando el coñazo a los demás para que se sumaran al carro. Y por fin con esta actualización se han dado cuenta de la importancia de ello.
PD: otra cosa que os recomiendo, es hacer code reviews. Ahora mismo somos dos programadores, bueno pues yo reviso el código de mi compañero y él el mío. Ninguna user story está completa hasta que no están los unit tests (si son necesarios, que no siempre), el código revisado de cada uno y bueno, sin bugs que haya sacado el tester.
Ojo con lo de revisar el código que hay gente que no soporta que le anden corrigiendo, hay que hacerlo con la mente abierta. Aquí lo hacemos para aprender y cuando vemos algo que el otro piensa que se podía hacer diferente se discute entre los dos y se toma la mejor solución (que puede o no ser la que había). Todo esto se hace con la intención de mejorar. Tampoco vale corregir el código del compañero sin avisar o sin explicar ni siquiera el por qué. Y hay que tomarse las críticas a bien (que ya hemos tenido movidas en otros desarrollos por intentar hacer lo mismo con otra gente que no quiere que le toquen "su código")
Marcadores