Upgrade to Pro — share decks privately, control downloads, hide ads and more …

TDD IRL reloaded

delucas
October 23, 2014

TDD IRL reloaded

Taller de Test-Driven Development dado en la Universidad de Palermo, para el Ruby Fun Day de la RubyConf Argentina 2014

delucas

October 23, 2014
Tweet

More Decks by delucas

Other Decks in Technology

Transcript

  1. ¿Dónde está la magia? • Ciclos cortos • No es

    sólo sobre las pruebas • Pruebas → diseño
  2. Reglas de oro • Nunca se escribe una nueva funcionalidad

    si hay algún test que falla. • Nunca se escribe código si no hay un test que evidencie su ausencia. • No se debe escribir más código del necesario para hacer pasar la prueba.
  3. Refactoring • Cambiar estructura sin cambiar comportamiento. • Remueve duplicación.

    • Vuelve el código más simple. • Vuelve el código más legible. • Se debe aplicar tanto al código productivo como a las pruebas.
  4. ¿Por qué no le gusta a la industria? • Tiempos

    • Tiempos • Tiempos • Tiempos
  5. TDD no es hacer magia • No deriva arquitectura: deriva

    diseño local • Se necesita una visión de arquitectura, aunque se valide con TDD • No es necesario ser miope
  6. Consejos • Siempre tener una lista junto al teclado para

    anotar los casos que se nos ocurran extemporáneamente. • Practicar con pequeños ejemplos reales. • Practicar con problemas conocidos.
  7. El secreto “A medida que los tests se vuelven más

    específicos, el código se vuelve más genérico”
  8. Recursos • TDD by example, de Kent Beck http://amzn.to/1k24MZ7 •

    Roman Numerals Kata, de Jim Weirich http://youtu.be/983zk0eqYLY • http://codekata.com/ • https://github.com/garora/TDD-Katas