Introducción a TDD

Preview:

Citation preview

   

Desarrollo Guiado por PruebasIntroducción

   

TDD - Introducción

En ingles:

Test-driven Development

O simplemente:

TDD

   

TDD - Introducción

¿Que es TDD?

● Una forma de desarrollar funcionalidades a partir de casos de uso.

● Se desarrolla una funcionalidad a partir de una pruebas que representa al caso de uso.

   

TDD - Introducción

TDD != Testing

   

TDD - Introducción

TDD != Testing

TDD no es hacer test del código que ya existe, para eso tenemos grupos de testing

especializados (que van a tratar de destruir nuestro código).

   

TDD - Introducción

TDD != Testing

TDD es desarrollar casos de uso a través de pruebas

   

TDD - Introducción

TDD se apoya sobre otras dos practicas:

➔Test First Development

➔Refactoring

   

TDD - Introducción

Test First Development

Esta metodología nos propone desarrollar primero una prueba de un caso de uso y luego la

funcionalidad que esta validando.

   

TDD - Introducción

Pasos para aplicar Test First Development

Primero, escribimos una prueba(método de test) basada en un caso de uso y verificamos que la pruebas falle. Si la prueba no pasa obtenemos un ROJO.

Segundo, implementamos el código funcional necesario para que la prueba pase (Ni mas ni menos, "Keep It Simple, Stupid" (KISS) ). Si la prueba Pasa obtenemos un VERDE.

Tercero, una ves que nuestra prueba pasa, podemos comenzar a pensar en refactorizar la funcionalidad. Tenemos que obtener un VERDE ya que esta todo probado.

   

TDD - Introducción

Test First Development

Primero, escribimos una prueba(método de test) basada en un caso de uso y verificamos que la pruebas falle. Si la prueba no pasa obtenemos un ROJO.

Segundo, implementamos el código funcional necesario para que la prueba pase (Ni mas ni menos, "Keep It Simple, Stupid" (KISS) ). Si la prueba Pasa obtenemos un VERDE.

Tercero, una ves que nuestra prueba pasa, podemos comenzar a pensar en refactorizar la funcionalidad. Tenemos que obtener un VERDE ya que esta todo probado.

   

TDD - Introducción

Test First Development

Primero, escribimos una prueba(método de test) basada en un caso de uso y verificamos que la pruebas falle. Si la prueba no pasa obtenemos un ROJO.

Segundo, implementamos el código funcional necesario para que la prueba pase (Ni mas ni menos, "Keep It Simple, Stupid" (KISS) ). Si la prueba Pasa obtenemos un VERDE.

Tercero, una vez que nuestra prueba pasa, podemos comenzar a pensar en refactorizar la funcionalidad. Tenemos que obtener un VERDE ya que esta todo probado.

   

TDD - Introducción

Refactoring

La idea detrás del refactor es mejorar el diseño el código modificándolo a través de una herramienta que automatiza las modificaciones.

   

TDD - Introducción

Refactoring

● No es lo mismo que modificar el código a mano.

● Una herramienta no comete errores, garantizando que nuestro código siempre siga funcionando.

   

TDD - Introducción

¿Pero por donde comienzo?

   

TDD - Introducción

Usemos JUnit 4 con anotaciones para escribir pruebas:

● @Test

● @Before

● @After

● @BeforeClass

● @AfterClass

   

TDD - Introducción

Video para ver:

● TDD Avanzado ­ Parte 1

● TDD Avanzado Parte 2

● Carlos Ble. TDD