Inyección de Características

Según la definición, BDD es una metodología que nos permite construir software que importa. La inyección de características es una técnica de análisis creada por Chris Matts que nos ayuda a encontrar características que nos permitan aportar el máximo de valor.

Continuar leyendo →

Organizando un proyecto BDD

Muchos proyectos que comienzan a usar BDD lo hacen escribiendo escenarios para sus historias de usuario. Esto podría dar a suponer que un escenario es una parte de una historia de usuario, pero lo cierto es que la relación entre historias de usuario y escenarios no es necesariamente jerárquica. También tenemos otros conceptos que son importantes dentro de la organización del proyecto, como las capacidades y características. Veamos algunas ideas de cómo se puede organizar un proyecto BDD y la relación entre algunos de sus artefactos. Todos estos conceptos son tomados de artículos de Liz Keogh y Chris Matts.

Continuar leyendo →

BDD: El panorama completo

El desarrollo guiado por comportamiento se vuelve cada vez más una técnica que todos quieren utilizar. Pero siento que no existe un concepto claro en la comunidad de qué implica utilizar BDD en un proyecto. Como muchos, comencé a explorar BDD desde el punto de vista de la automatización de escenarios. Pero a medida que fui profundizando en el estudio de BDD, descubrí que esto es sólo una pequeña parte de BDD, y que existe mucho más y se encuentra disperso en la internet por lo que es difícil ver el panorama completo.

Este post pretende ampliar la visión de BDD como metodología ágil, para aquellos que aún no han ido más allá de la automatización.

Continuar leyendo →

Aplicando el patrón Page Object en la automatización de escenarios

En los últimos dos post, he comentado acerca de patrones y técnicas para las pruebas unitarias. En esta oportunidad, hablaré de un patrón que podemos utilizar a nivel de nuestras pruebas de extremo a extremo (end to end). Se trata del patron Page Object.

Continuar leyendo →

Aumentando la expresividad de nuestras especificaciones

En el post anterior, vimos como aplicar el patrón databuilder puede ayudarnos a escribir el contexto inicial de nuestras especificaciones de manera más clara. En este artículo describiré algunas técnicas adicionales que ayudan a mejorar la expresividad de las pruebas.

Continuar leyendo →

Utilizando el patron Databuilder en nuestras pruebas unitarias

Para aplicar TDD o BDDSpec de manera efectiva, es importante que conozcamos algunos patrones y técnicas que nos permitan mantener nuestra suite de pruebas ordenada y mantenible. El código de prueba debe ser tratado como ciudadano de primera categoría al igual que el de nuestra aplicación. A continuación describiré el uso del patrón DataBuilder, y cómo nos ayuda a escribir pruebas más expresivas.

Continuar leyendo →

BDD de especificaciones: un ejemplo concreto en Java

Esta es la implementación en Java de un ejemplo concreto de BDD de Especificaciones. Es importante que leas primero de que se trata el ejemplo en el artículo anterior, antes de proceder a ver la implementación.

Continuar leyendo →

BDD de especificaciones: Un ejemplo concreto

En un artículo anterior, había compartido con ustedes un ejemplo concreto de BDD de historias. Ahora toca el turno de un ejemplo de lo que es BDD de especificaciones.

Continuar leyendo →

Desarrollo Agil con BDD en Java

Continuando mi tour por las comunidades de desarrolladores de Bogotá, hice presencia en el 7mo. Java Day para compartir con la comunidad de Java mi charla de Desarrollo Ágil con BDD.

Continuar leyendo →

#AgileOpenMedellin - Mi experiencia

El pasado sábado 22 de Junio de 2013, estuve participando en mi primer evento de agilidad en Colombia, el AgileOpen Medellín, que se llevó a cabo en Ruta N de esta ciudad. Con mas de 70 sesiones y 580 participantes, el evento fue todo un éxito, con mucho intercambio de información, networking y mucho entusiasmo de los asistentes. A continuación mi experiencia.

Continuar leyendo →