Desarrollo impulsado por el comportamiento (BDD)/pepino

Desarrollo impulsado por el comportamiento describe un ciclo de interacciones con resultados bien definidos, que dan como resultado la entrega de un software funcional y probado que importa. Con BDD, crea especificaciones ejecutables, no pruebas. Desea observar lo que hace su código, no los aspectos internos de cómo lo hace. Este método de desarrollo consiste principalmente en visualizar objetivos y tiene como objetivo escribir pruebas ANTES de escribir el código de producción en lugar de probar todo el código de la aplicación después de su desarrollo.
Si se concentra en probar sus clases, entonces la estructura de su código de prueba refleja la estructura de su código de producción. ¿Qué sucede cuando refactorizas y cambias esa estructura? ¿Luego reescribes tus pruebas? Si te concentras en el comportamiento, no es necesario. Cuando refactorizas, el comportamiento de tu aplicación no cambia. Aléjese de las pruebas estatales. Si depende de variables específicas en su código, el estado interno de su aplicación, será una barrera para la refactorización. En lugar de centrarse en afirmaciones, establezca expectativas. Uno de los marcos que utiliza este estilo de desarrollo impulsado por el comportamiento es el Pepino estructura. Instalación: 1.Primero deberás instalar el pepino en los rieles. > gema instalar rieles de pepino 2. Necesidades de pepino carpincho o webrat conductor al trabajo. Ejecute el siguiente comando y se instalará el entorno de pepino requerido: > rastrillo RAILS_ENV=gemas de pepino:instalar (Para usuarios de Debian/ubuntu) Si la línea anterior da algún error como "Falta libxslt, intente port install libxslt o yum install libxsltdevel“, luego intente el siguiente comando: > aptget instalar libxml2dev libxslt1dev 3. Cucumber necesita agregar algunos archivos a su aplicación. Si está ejecutando estas pruebas para pruebas unitarias, deberá agregar un sufijo testunit. Además, dale el capibara si el capibara está instalado > script/generar capibara pepino –testunit Si webrat está instalado, ejecute el siguiente comando: > script/generar pepino webrat –testunit Descripción: Después de instalar pepino para su aplicación, verá una nueva carpeta llamada características. Esta carpeta de características tiene 2 subcarpetas llamadas definiciones_pasos y apoyo. Los casos de prueba o características deben escribirse en un archivo dentro del directorio de características con un .característica extensión. Estas características incluyen pasos que se definirán en un archivo dentro de la carpeta step_definitions. La carpeta step_definitions también contiene un archivo llamado web_pasos.rb que contiene algunos pasos predefinidos. La carpeta de soporte contiene 2 archivos, a saber env.rb que contiene los diversos entornos que están siendo utilizados por el pepino actualmente instalado y caminos.rb que asigna un nombre a la ruta utilizada por step_definitions. Pasos y definiciones de pasos: A paso es análogo a una invocación de método o función en C, C++ y otros lenguajes de scripting. Los pasos se declaran en su características/*.característica archivos. Por ejemplo: Paso dado Tengo 93 pepinos en mi barriga. Un paso “llama” a una definición de paso. Las definiciones de los pasos se definen en archivos Ruby en características/step_definitions/*_steps.rb Por ejemplo: Definición del paso Dado /^Tengo (d+) pepinos en mi barriga$/ do |cukes| # Algún código Ruby aquí termina Características Una línea que comienza con la palabra clave Característica seguida de texto con sangría libre inicia una característica. Una característica suele contener una lista de escenarios. Puedes escribir lo que quieras hasta el primer escenario, que comienza con la palabra Guión. Cada escenario consta de una lista de pasos, que deben comenzar con una de las palabras clave Dado, cuando, entonces, pero o y. El pepino los trata a todos por igual, pero no deberías hacerlo. Dado: un estado conocido antes de que el usuario (o sistema externo) comience a interactuar con el sistema. Cuándo: describe la acción clave que realiza el usuario. Luego: Observa los resultados. Por ejemplo: se debe ingresar el siguiente código en el archivo feature/*.feature: Característica: Servir café para ganar dinero Los clientes deberían poder comprar café en todo momento Escenario: Comprar el último café Dado que quedan 1 café en la máquina Y he depositado 1$ Cuando presiono el botón de café Entonces me deberían servir un café Para cada paso del escenario, Cucumber buscará una coincidencia. definición de paso. Una definición de paso está escrita en Ruby. La definición de cada paso consta de una palabra clave, una cadena o expresión regular y un bloque. Se debe ingresar el siguiente código en el archivo características/step_definitions/*_steps.rb: Dado /quedan (d+) cafés en la máquina/ hacer |n| @machine = Machine.new(n.to_i) end Luego “Me deberían servir café” do @machine.dispensed_drink.should == “caffee” end El resultado de una aplicación que se desarrolló utilizando el desarrollo basado en el comportamiento puede no ser más eficiente ni puede tener menos errores en comparación con una aplicación que se desarrolló y probó bien utilizando el desarrollo basado en pruebas habitual. BDD solo le ayuda a realizar un seguimiento y planificar cómo se comportará o deberá comportarse el código que va a escribir. Póngase en contacto con nosotros.

Suscríbete para recibir las últimas actualizaciones

Artículos Relacionados

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

es_ESSpanish