Mejorar la calidad en los requerimientos con BDD, cucumber y Gherkin. 

Todos hemos trabajado en proyectos, que debido a malentendidos, todo el código echo hasta ese momento, podría eliminarse, para volver a empezar. Y es lo más frustrante que nos puede pasar, cuando estamos creando algo. ¿Por que pasa?.

El software empieza con una idea. Asumamos, que es una buena idea, y que puede hacer del mundo, un lugar mejor. Normalmente, el que tiene la idea, no tiene habilidades y tiene que buscar un programador, para convertir la idea en software. La idea tiene que viajar de una mente a otra con buena comunicación, lo que significa, no sólo describir las ideas a otros, sino que también necesitas estar seguro de que lo han entendido bien.

Es por esta razón, que los equipos ágiles se basan en la idea de entregar pequeñas porciones de software progresivamente a medida que el proyecto va avanzando, con la idea de recibir el Feedback de: ¿es esto lo que quieres?. Para facilitar esta comunicación, rápida y eficiente y evitar malentendidos, necesitamos un espacio y hablar un idioma común.

Metodologías de test que se encarga de hacerlo, son:
• TDD ( Test Driver Development), dónde escribimos las pruebas para verificar que el comportamiento del código es correcto des de un punto de vista de negocio.
• BDD (Behaviour Driver Development), se basa en TDD, pero va un poco más allá. El objetivo del BDD, es la de describir el comportamiento del test (features) antes de que el desarrollo empiece, para analizar, explorar y eliminar cualquier tipo de malentendidos desde el principio. Busca un lugar, para que todos en el equipo puedan fácilmente entenderse, para unir la parte técnica y la de negocio, y que sea desde ese lugar dónde se detalle el comportamiento de las pruebas, y que van a arrancar el Testing, para luego empezar con el desarrollo.

Y para darle forma a la teoría, cucumber es la herramienta y guerkins es el lenguaje con que escribiremos las pruebas (features). No voy a entrar en hablar de ellas, porque hay infinidad de sitios, que ya lo hacen muy bien. Una guía sencilla para tener un primer contacto con Cucumber.

Leave a Reply

Your email address will not be published. Required fields are marked *