TDD: buenas prácticas

TDD SchemaEncuentro en el blog de Steve Daskman, un listado con mejores prácticas a la hora de desarrollar usando TDD. No estoy de acuerdo con todos los consejos, pero es un buen recopilatorio:

  • Tener el código separado de los tests, en carpetas diferentes.
  • Los tests deben fallar la primera vez que son escritos.
  • Los nombre de los tests deben ir acorde con la intención, deben ser nombres expresivos.
  • Refactorizar para eliminar código duplicado después de pasar los tests.
  • Repetir las pruebas después de cada refactorización.
  • Solo se debe escribir nuevo código, cuando algún test falla. Cada test debe comprar un nuevo comportamiento, o diferente.
  • Escribe primero el assert.
  • Minimiza los asserts en cada test.
  • Todos los tests deben ser pasados antes de escribir otro test.
  • Solo se refactoriza cuando todos los tests pasan.
  • Escribe el mínimo y simple código para pasar las pruebas.
  • No usar las dependencias entre tests. Los tests deben pasar en cualquier orden.
  • Los tests deben ser rápidos.
  • Usa Mock objects para testear código cuando haya alguna limitación, y así ejecutar los tests más rápido.
TDD Diagram


ACTUALIZACIÓN (2011/10/02):  A petición de @zottoh, añado otro diagrama de TDD que hay en la Wikipedia:
Test Driven Development - Diagram

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>