Hola Fabio,
Gracias por este post. Estoy completamente de acuerdo con vos en la fuerza de
los tests, esta experiencia tuya me da mas argumentos cuando los defiendo con
algunos clientes/colegas.
En cuanto al test mal escrito, no deberia sorprender, el programador puede
cometer errores en el codigo o en el test, al fin y al cabo, son ambos son dos
caras de la misma moneda.
Carlos Peix
_____
From: NHibernate-Hispano@googlegroups.com
[mailto:NHibernate-Hispano@googlegroups.com] On Behalf Of Fabio Maulo
Sent: Domingo, 23 de Septiembre de 2007 11:45 a.m.
To: NHibernate-Hispano
Subject: [NHibernate-Hispano] OT: La fuerza de los tests
En estos días estuve trabajando en el porting de una nueva feature en NH:
Events/Listeners.
El porting implicó la introducción de nueva clases y sobre todo modificación de
varias clases existentes en NH.
Sin entrar mucho en detalle tomo como parámetro lo que pasó en la implementación
de la session:
El la versión 1.2.x la session es de 5819 lineas de código.
Después de la modificación quedó en 3819.
Con que tranquilidad se pueden tirar 2000 lineas de código en una clase tan
fundamental como SessionImpl ?
Cuantas noches tendría que estar sin dormir por haber tirado 2000 lineas de
código ?
Cuantos errores habré cometido ?
Cuantas cosas dejarán de funcionar ?
Y aquí viene "la fuerza de los tests"
Hay una cosa de la cual puedo estar seguro:
TODO LO EXISTENTE SEGARÁ FUNCIONANDO COMO ANTE
puedo dormir tranquilo.
Todos programadores no somos dioses y nos podemos confundir.
Hay muchos que para probar algo crean un proyecto de consola, prueban una clase
y luego tiran el proyecto.
Bueno... ya que hay que probar conviene escribir la prueba una sola vez y
verificar que siga funcionando siempre.
Si bien hace un año que vengo comprobando las bondades de hacer tests me queda
claro que los tests no son la panacea.
En esta experiencia estuve regañando una 7 u 8 horas con un problema....
Había un tests que no lograba pasar y no entendía donde ca.... estaba el
problema...
Justo ante de ir a dormir, preocupado, verifiqué un poco mas a fondo lo que
estaba haciendo el test y....
El tests estaba mal. Se estaban esperando resultados erróneo y esto provocaba
que las modificaciones que hice rompían el test.
Lo lindo fue darse cuenta que hace mas de un año que nadie se dio cuenta que NH
estaba fallando en ese caso.
Lo feo fue que perdí 7/8 horas por un test mal escrito.
Bye.
Fabio.
P.D. Yo confio en el codigo escrito por otros... pensaba que el test estaba bien
escrito...