Guillermo, 2008/9/18 Guillermo Schwarz <[EMAIL PROTECTED]>:
>> No estamos hablando de lo mismo. Los tests de XP son una >> especificacion de lo que uno tiene que programar. Los tests de los >> que hablo con test que verifican como esta implementado lo que pasa >> los tests estos que decis. Claramente, solo se pueden correr despues >> de programar. > > En XP existen los test funcionales y los test unitarios. Todos se hacen > antes de programar y se ejecutan de manera automatizada. De nuevo, no es que me vengas a decir "(no) estoy de acuerdo con lo que dijiste", pero siento que me recitas un libro en vez de contestarme algo. > Se ejecutan incluso antes de programar. La idea es que fallen antes de que la > funcionalidad estè implementada. El problema obviamente es que falla la > compilaciòn en vez de fallar los tests, pero desde el punto de vista de XP > lo que falla son los tests. La idea es que si el test no fallaba antes de > programar, entonces còmo saves que efectivamente la prueba que estàs > haciendo realmente prueba algo. No se que tiene que ver esto con lo que dije antes. > La gente que es fanàtica de los tests dice que hay que modificar el còdigo, > introduciendo defectos a propòsito para ver si los tests los detectan o no. > Esto obviamente viene de fìsicos experimentales màs que de programadores, > pero no dejan de estar en elo correcto. El problema es que en mundo del > software la mayor parte de los problemas son problemas de organizaciòn (còmo > organizo el còdigo para que se entienda, como logro rastreabilidad entre los > requerimientos y el còdigo, etc.) de modo que es muy comùn que un defecto > introducido para probar un test luego sea imposible de eliminar del sistema > ya que con la magia del copy y paste el defecto se reproduce ràpidamente. > > Una soluciòn serìa utilizar CPD (copy and paste detector) lo que funciona > bastante bien. Otra es hacer code review antes de cada check-in, para > asegurarse que el còdigo es razonable... Esto es imprescindible... Estemmm... estas basicamente diciendo lo que dije antes... pero estos tests solo se pueden ejecutar despues de escribir el codigo, no?... > En realidad las pruebas no son para evitar decisiones de los programadores, > sino que son especificaciones a cumplir. Si las especificaciones estàn bien > hechas debieran ser concisas y suficientes para determinar que el programa > nunca las pase, a no ser que el programador sea inteligente y escriba sòlo > el còdigo necesario. Que es lo que dije antes acerca de XP, pero ya dije que no estaba hablando de eso.. Disculpa, me es demasiado dificil tener una conversacion asi. No creo que conteste mas a este thread. Andres. --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] http://www.clubSmalltalk.org -~----------~----~----~----~------~----~------~--~---
