BDD (Behavior Driven Development) Framework tutorial: Explore las características y ventajas de BDD Framework con ejemplos de Cucumber Framework
BDD framework es decir, Behavior Driven Development es un enfoque de desarrollo de software que permite al probador/analista de negocios crear casos de prueba en un lenguaje de texto simple (Inglés).
el lenguaje simple utilizado en los escenarios ayuda incluso a los miembros del equipo no técnicos a comprender lo que está sucediendo en el proyecto de software., Esto ayuda y mejora la comunicación entre los equipos técnicos y no técnicos, los gerentes y las partes interesadas.
¿Qué es el desarrollo impulsado por el comportamiento BDD?
BDD transpira del TDD, es decir, el desarrollo impulsado por pruebas que permite a los usuarios trabajar con múltiples datos de prueba con una intervención mínima en el código del software y, por lo tanto, ayuda a aumentar la reutilización del código, que es un mecanismo que ahorra tiempo en el desarrollo de software/ automatización de pruebas.
al heredar TDD, BDD también tiene todas esas características junto con sus ventajas.,
- Los escenarios de prueba se escriben por separado en un archivo diferente, denominado archivo de entidad.
- Las pruebas se escriben enfocando las historias de usuario y el comportamiento del sistema en un lenguaje profano.
- El código está sujeto a ser escrito de manera diferente en el archivo de definiciones de paso, es decir, Java, Python.
lectura sugerida = > ¿cómo participan los evaluadores en el enfoque TBB/BDD
por qué usar el marco BDD?
antes del marco BDD, todos usaban TDD., TDD funciona bien en el desarrollo de software, siempre que las partes interesadas estén familiarizadas con el marco que se está utilizando y su conocimiento técnico sea suficiente. Sin embargo, este puede no ser el caso siempre.
BDD proporciona un camino que actúa como un puente para superar la brecha entre los equipos técnicos y no técnicos porque los casos de prueba se escriben comúnmente en texto simple, es decir, en inglés. La principal ventaja de BDD es la baja jerga y el enfoque más claro que es más fácil de entender.
¿cómo implementar el enfoque BDD?,
los escenarios de prueba deben escribirse en lenguaje sencillo con una descripción detallada de la prueba, Cómo probar la aplicación y el comportamiento de la aplicación que puede ser comprensible para todos.
en este tutorial, nos centraremos en Cucumber – una herramienta de software para BDD y aprenderemos a implementarlo prácticamente utilizando su lenguaje, es decir, Gherkin.
Cucumber – una herramienta de Marco BDD
Cucumber es una herramienta de marco de Desarrollo impulsado por el comportamiento (BDD) para escribir casos de prueba.,
given – When – Then Approach
Sample Feature File
Feature: BDD implementation using CucumberScenario: Login to G-mail using Cucumber pluginGiven User is navigating to G-mail Login PageWhen User need to enter username as "Username" and password as "Password"Then User is successfully navigated to the G-mail Mail Box
Sample Step Definition File
Cucumber es un complemento de prueba que ayuda en la implementación del enfoque de desarrollo basado en el comportamiento.
Recommended Reading => las mejores herramientas BDD que debe conocer
ventajas del marco BDD
a continuación se enumeran las diversas ventajas de BDD.
#1) La cobertura de historias de usuarios
El marco híbrido con BDD está destinado a combinarse con diferentes características., Cada recurso en la fase de desarrollo de software puede contribuir al marco BDD.
debido a su fácil concepto de texto laico en forma de archivo de características permite a los interesados de los recursos técnicos escribir los escenarios en lenguaje Gherkin utilizando las historias de usuario. La compatibilidad del texto plano ayuda a obtener la máxima cobertura en las pruebas.
el archivo de características que contiene los escenarios son:
- historias de usuario definidas de la empresa.
- Criterios para que los desarrolladores determinen si las especificaciones cumplen con los requisitos del negocio.
- escenarios de Prueba para el equipo de pruebas.,
- cubierta de Shell para un probador de automatización que les permite escribir por separado su código en archivos de definición de pasos.
- escenarios de prueba explicados para las partes interesadas.
la clasificación de las definiciones de pasos ayuda al probador de automatización a mantener su código intacto, lo que ayuda en el mantenimiento de los scripts.
#2) claridad de escenarios
El lenguaje Gherkin utiliza texto sencillo que se centra en el resultado del producto que se está probando / desarrollando utilizando BDD.,
como archivo de características separe la descripción técnica en un archivo de definiciones de pasos diferentes para probadores de automatización, ayuda inteligentemente a una persona no técnica a comprender la prueba automatizada fácilmente. Cualquier actualización se puede implementar en una pequeña discusión.
legibilidad el poder del pepinillo garantiza la claridad de los escenarios a cada uno de sus usuarios, lo que a su vez, ayuda a construir el producto correcto.
#3) automatización de escenarios de prueba
la implementación de pepino en un marco BDD permite que un probador de automatización inicie fácilmente el scripting con el enfoque correcto., El lenguaje fácil de los escenarios de pepino les ayuda a comprender la funcionalidad de una mejor manera.
Cucumber es un plugin independiente del lenguaje, ya que es compatible con muchos lenguajes de programación, por ejemplo, Java, Python, etc.
Also Read => Automation Testing Using BDD Tool
#4) Code Reuse in Framework
given – When – Then approach da libertad a los probadores para usar los mismos pasos tantas veces como queramos en el archivo de características que gradualmente ayuda a ahorrar tiempo para los probadores de automatización.,:
escenario: escenario 1
El usuario dado es navegado a la página de inicio de Google
Cuando el Usuario buscó «pepino» en el motor de búsqueda
Luego hizo clic en el botón de búsqueda
y el usuario puede ver los resultados de búsqueda de pepino en el navegador web
escenario: escenario 2
El usuario dado es navegado a la página de inicio de Google
Cuando el Usuario buscó «Selenium» en el motor de búsqueda
Luego hizo clic en el botón de búsqueda
y el usuario puede ver los resultados de búsqueda para Selenium en el navegador web
en los dos escenarios anteriores, podemos concluir que los pasos «dado», «cuando» y «entonces» son reutilizables en el segundo escenario.,
#5) parametrización en el archivo de entidad
Un usuario puede parametrizar los pasos del pepinillo en el archivo de entidad para obtener la reutilización en el archivo.
por ejemplo, si un usuario está trabajando en una aplicación bancaria donde inicia sesión en la aplicación una y otra vez. Este tipo de pasos se podrían parametrizar con un conjunto diferente de datos y ahorra tiempo al probador.
al escribir los escenarios, el usuario tiene que definir los pasos del archivo de características de tal manera, para que el usuario pueda usar la funcionalidad común fácilmente.,
#6) Integración Continua: fácil de integrar
Cucumber también admite el trabajo con Jenkins. Puede ejecutar la ejecución de la prueba de pepino en Jenkins y también implementar lo mismo en las máquinas esclavas de Jenkins. El complemento cucumber reporting también proporciona a los usuarios una vista ampliada para realizar un seguimiento de los escenarios de prueba.
Worth Reading => proceso de Integración Continua
conclusión
El desarrollo impulsado por el comportamiento es un enfoque muy inteligente en la metodología ágil., Siempre se recomienda comenzar ya sea su desarrollo o pruebas utilizando BDD, ya que su uso le da una plataforma para trabajar de forma independiente con diferentes tecnologías.
Cucumber es una de las mejores herramientas que ayuda a implementar el enfoque de Desarrollo impulsado por el comportamiento en el proyecto de software. Esto nos permite trabajar con muchas tecnologías como Java, Python, Jython, etc.
El Pepino está siendo ampliamente utilizado por muchas organizaciones y freelancers, también tiene muchas comunidades donde los usuarios pueden discutir sus problemas y pueden encontrar fácilmente soluciones a sus problemas.,
Cucumber language – Gherkin que utiliza palabras simples en inglés-reduce la brecha de comunicación entre los equipos técnicos y las partes interesadas y les permite trabajar juntos al mismo nivel.
¡esperamos que este artículo le haya ayudado a comprender los conceptos básicos del marco BDD!!