Cucumber

10
CUCUMBER

description

Cucumber: Introducción. Escenarios BDD Ventajas, inconvenientes

Transcript of Cucumber

CUCUMBER

CUCUMBER Software para BDD (Desarrollo guiado por

comportamiento)

Librería de tests de aceptación funciona con Ruby, Java, .NET, Flex o aplicaciones web en cualquier lenguaje.

Cucumber = TESTING +BDD +DSL +Especificaciones legibles.

Característica: historias se escriben en texto plano. Traducciones de Ruby del texto plano Corre tests contra la aplicación

FEATURE: CARACTERÍSTICA

Feature: para que sirve la funcionalidad, que valor aporta y a quien va dirigida. Se corresponde con una historia del usuario

Escenario: caso de uso, ejemplo. Una característica puede tener varios escenarios

STEPS DE UN ESCENARIO

Cucumber soporta Español (indicar el idioma): característica, para, como, escenario, dado, cuando, entonces …

No importa el orden !!!!!

ELEMENTOS DE CUCUMBER

features / login.featureFEATURECriterios de aceptación

(Texto plano)

STEP DEFINITIONS(Ruby)

features / step_definitions/user_steps.rb

Cucumber busca la definición de los steps usando E.R

STEPS

Steps pueden ser reutilizables si se escriben bien:

Utilizan variables y parámetros

STEPS

VENTAJAS DE CUCUMBER Disponemos de criterios de aceptación Especificación y test

- en un mismo documento

- en el lenguaje del cliente

- en su idioma (36 disponibles)

- vocabulario compartido

Evitamos confusiones al transformar especificaciones en funcionalidades o tests unitarios

Documentación

DESVENTAJAS DE CUCUMBER Complejo porque hay que usar Ruby/Jruby/Java Quien escribe las pruebas se tiene que adaptar a un

formato predeterminado No tiene soporte para Junit o TestNG No hay forma de ejecutar un runner automático para

las pruebas (hay que utilizar ant o maven)

INSTALACIÓN Instalar Ruby (check the "Enable Ruby Gems" option) gem update –system gem update gem install cucumber win32console