Puntos clave

  • El desarrollo impulsado por el comportamiento (BDD) es un proceso de desarrollo que prioriza la colaboración entre equipos técnicos y no técnicos.
  • Con BDD, los casos de prueba se escriben en lenguaje natural y tienen en cuenta los valores de su empresa y la funcionalidad del usuario. LoadView puede ser una herramienta útil en el kit de herramientas de desarrollo de BDD, ya que ofrecemos una plataforma accesible con informes que los usuarios técnicos y no técnicos pueden comprender rápidamente.

Los desarrolladores son una parte integral de la puesta en marcha de un sitio web, aplicación o API, pero no son los únicos involucrados. Todos, desde gerentes de producto hasta analistas de negocios, tienen el mismo interés en desarrollar y mantener una fuerte presencia en la web. Diferentes equipos tienen diferentes fortalezas, conocimientos y habilidades. Un asociado de marketing puede no estar tan versado en desarrollo como un ingeniero de software, entonces, ¿cómo puede asegurarse de que todos los miembros de su equipo estén en la misma página? Ahí es donde entra en juego el desarrollo impulsado por el comportamiento.

El desarrollo impulsado por el comportamiento (BDD) es un proceso de desarrollo que prioriza la colaboración entre equipos para ayudarlo a despegar su sitio de una manera que sirva a todos los involucrados. Al implementar un proceso BDD, un equipo puede formar un lenguaje consistente y accesible que puede ser entendido por programadores y no programadores por igual. Los casos de prueba están escritos en lenguaje natural y tienen en cuenta los valores de su empresa y la funcionalidad del usuario.

En LoadView invertimos en ayudar a su negocio a prosperar en todos los departamentos, así que aprendamos un poco más sobre BDD y veamos cómo BDD puede ayudar a su equipo a trabajar juntos.

behavior driven development
 

Una breve historia del TDC

En 2006, el desarrollador de software Dan North notó que había brechas en la comunicación entre los departamentos dentro de la empresa en la que trabajaba. Parecía que los equipos menos técnicos, como los gerentes de productos y marketing, se quedaban en la oscuridad sobre los desarrollos clave, y los desarrolladores de software no se daban cuenta de las principales preocupaciones de los usuarios mientras navegaban por su sitio.

A partir de estas brechas, North pudo desarrollar un nuevo sistema. Al ramificarse del desarrollo guiado por pruebas (TDD), BDD se centra en el comportamiento humano real, el inglés sencillo y un modelo lógico claro. Este proceso tiene en cuenta las preocupaciones comerciales, así como las demandas técnicas. Tomó modelos previamente complicados y los tradujo a un nuevo lenguaje específico de dominio (DSL) que se acercó lo más posible al inglés simple y conversacional.

Este DSL se convirtió en el factor definitorio de BDD, el modelo de dar / cuándo / entonces.
 

El modelo Give/When/Then

En el modelo dar/cuándo/entonces, cada parte define una etapa de una transacción o interacción en línea.

  • Dar: se refiere a la parte dada de la ecuación. El status quo. Dónde comenzamos antes de que un usuario actúe sobre la interfaz
  • Cuándo: es el acto realizado por el usuario que desencadena la interacción. Un clic, una transacción o una palabra clave ingresada en la barra de búsqueda son todos posibles “cuándo”
  • Entonces: es lo que viene después, qué reacción desencadena la acción.

Aquí hay un ejemplo de un escenario de dar / cuándo / entonces:

  • Dado que la cuenta 1 tiene $0 y la cuenta 2 tiene $100
  • Cuando la cuenta 2 transfiere $50 a la cuenta 1
  • Entonces la cuenta 1 tiene $50 y la cuenta 2 tiene $50

Este modelo de inglés sencillo hace que las situaciones de programación sean fáciles de compartir entre departamentos. El DSL puede ser entendido por cualquier persona, ya sea un desarrollador o no. Cuando se ejecutan pruebas funcionales y no funcionales, el uso de un modelo de dar / cuándo / luego garantiza que no haya brechas en la comunicación.

Esta es la función esencial de BDD, usar un inglés sencillo para desarrollar un DSL entendido por todos. Hay muchos beneficios al usar BDD para desarrollar su sitio web, aplicación o API, y desarrollar un DSL es solo uno de ellos.
 

Ventajas de desarrollar con BDD

BDD ofrece grandes ventajas si trabajas con un equipo diverso. Su enfoque en la funcionalidad, la comunicación clara y la experiencia del usuario lo convierte en un gran proceso para negocios en línea y servicios digitales con clientes no expertos en tecnología. BDD es:

  • Eficiente: Tener una funcionalidad y un lenguaje claramente definidos que sean acordados por todas las partes interesadas es un beneficio clave de BDD. Con todos en la misma página, el desarrollo desde los ángulos de negocio y codificación puede tomar forma de manera oportuna. Con todos los equipos trabajando juntos, habrá menos tiempo necesario para volver atrás y volver a trabajar elementos no funcionales.
  • Barato: BDD no solo es bueno para los valores de su negocio, sino que también es bueno para sus resultados. Un lenguaje bien definido significa que es fácil crear y validar casos de prueba. Estos casos de prueba se pueden automatizar con una comprensión clara de lo que se espera y cuándo. La automatización de estas pruebas puede reducir el costo de las pruebas de aplicaciones.
  • Alta calidad: Con la ayuda de equipos no basados en el desarrollo, los diseñadores y programadores obtienen comentarios sobre la experiencia del usuario de inmediato. Esto les obliga a pensar y desarrollarse desde la perspectiva del usuario. Desarrollar desde el punto de vista del usuario también ayuda a los desarrolladores a escribir código estable, escalable y comprobable. Esto ayuda a evitar problemas del usuario antes de que ocurran.

 

Contras de desarrollar con BDD

Aunque BDD puede ser un gran proceso en ciertas situaciones, no es universal. BDD se inventó para resolver problemas y cerrar brechas en el enfoque TDD. Si los programadores tienen menos experiencia, no están bien versados en el proceso de desarrollo de TDD, o confían en herramientas específicas y lenguaje de programación, BDD puede no ser la opción correcta.

BDD se basa en una buena comunicación, eso significa tener un equipo de desarrolladores dedicados que puedan comunicarse de manera efectiva con disfraces, usuarios y representantes de otros equipos. Esto podría significar gastos generales adicionales.
 

Herramientas populares de BDD

BDD ha demostrado ser popular en la comunidad de desarrolladores. Muchas personas han adoptado el enfoque BDD y han desarrollado una serie de herramientas para hacer el trabajo. Aquí hay algunas herramientas populares de BDD.

  • Pepino una popular plataforma de código abierto para la colaboración BDD. Ayuda a los equipos a crear funcionalidades en texto sin formato. Proporciona cohesión utilizando DSL que es fácil de compartir con todo el equipo. Implementa la sintaxis de Gherkin.
  • Lettuce se basa en Cucumber y funciona muy bien para aplicaciones basadas en Python.
  • Specflow es otra plataforma BDD de código abierto que utiliza la sintaxis de Gherkin. Está diseñado para la plataforma .NET.

 

Desarrollo basado en el comportamiento con LoadView

BDD es un proceso, y las pruebas de rendimiento son una parte importante de ese proceso. La automatización de las pruebas de rendimiento es una parte esencial de BDD, lo que ayuda a garantizar una respuesta rápida para que su sitio web despegue. LoadView ejecuta pruebas de rendimiento que simulan el comportamiento real del usuario con scripts simples para que pueda automatizar sus pruebas utilizando las prácticas recomendadas de BDD. Ser capaz de probar cómo funciona su sitio web bajo varias cargas de usuarios, ubicaciones de usuarios y niveles de estrés puede ayudar a todos los departamentos involucrados en el desarrollo impulsado por el comportamiento.

LoadView es una plataforma accesible, que no requiere conocimientos previos de codificación, por lo que es una excelente opción para un equipo que trabaja en múltiples departamentos no técnicos. LoadView está diseñado para probar:

  • Páginas web
  • Aplicaciones móviles nativas
  • Apis

behavior driven development
 

Pruebe LoadView hoy mismo

BDD está diseñado para centrar los valores comerciales durante el proceso de desarrollo, siempre teniendo en cuenta el resultado final del usuario. LoadView puede ayudarle a automatizar las pruebas de rendimiento para un desarrollo eficiente y fácil de entender. Pruebe LoadView de forma gratuita o programe una demostración hoy para ver cómo puede implementar pruebas de rendimiento en el proceso BDD de su empresa.