Pizarra con algunos materiales de nuestros encuentros

domingo, 30 de diciembre de 2018

Habilidad: Desarrollo guiado por tests (TDD)

¿Sabés desarrollar más rápido y mejor usando Test Driven Development?
Es una habilidad muy valorada en cualquier desarrollo serio. ¡Y es fácil!

  1. Escribís un test que tiene que satisfacer tu aplicación,
    ej. si me enviaste un mail lo tengo que ver en mi pantalla de "inbox"
  2. Lo automatizás todo lo que puedas
    (abajo hablamos de herramientas para eso)
  3. Ejecutás el test y mostrás que falla como corresponde
    porque todavía no implementaste esa funcionalidad en tu aplicación!
  4. Implementás en tu aplicación lo necesario para pasar el test
  5. Mejorás el código, limpiás, simplificás y te asegurás que sigue pasando todos los test anteriores.
  6. Repite desde 1
Las ventajas de guiar tu desarrollo con test es que
  • ¡Te enterás enseguida si rompiste algo!
  • ¡Son la mejor documentación sobre qué hace y qué no!
    Si hacés sólo esa te asegurás que esté siempre actualizada
  • No te complicás ni te perdes: vas haciendo de a una cosa que sirve y se paga por vez.
    (aunque desubras que tenés que reescribir todo el código, los test van a seguir siendo los mismos y pasarlos te va a seguir guiando)
Hice un estudio para aplicarlo al desarrollo de aplicaciones web en node.js con expressjs (por ejemplo la API para miequipo)

https://github.com/podemosaprender/js_node_express_s_test_superagent

(notas para mejorar este post)

Por ahí este video te da la idea, si no te distraés con algunas cosas que el autor usa pero no hacen falta

https://www.youtube.com/watch?v=BlT2FeUXeqY

Fijate como escribe el test, revisa que falle y aparezca el cartelito en rojo, escribe el código y revisa que aparezca verde.

Después hacemos un caso más interesante con una app de verdad, lo voy a usar para

https://github.com/podemo.../app_aprender_miequipo_backend_1

(fijate que habia escrito que funcionalidad quería a lo chancho en el README, y ahí senti que necesitaba TDD para no perderme)
Compartir:

0 comentarios :

Publicar un comentario