SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
Tests de aceptación con Cucumber

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Contenido
1. Tests de aceptación
2. Cucumber
3. Caso práctico

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Tests de aceptación






La idea viene de eXtreme Programming (XP)
Se llaman tests de aceptación porque expresan lo
que el software tiene que hacer para que los
stakeholders lo consideren “aceptable”
Por lo tanto desarrolladores y stakeholders son los
que escriben las pruebas

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Tests de aceptación
• Los tests unitarios nos dicen que lo que estamos
desarrollando está correcto
• Los tests de aceptación nos dicen que lo que
estamos desarrollando es lo correcto

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Tests de aceptación
• Aumenta el feedback  se reducen los
malentendidos
• Surge un lenguaje común que todos los
relacionados con el proyecto entienden
• Al ser escritos como ejemplos estimula la
imaginación de los participantes

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Cucumber
• Cucumber hace fácil leer y escribir tests de
aceptación por cualquier miembro del equipo
• Cucumber se convierte en una herramienta que
fomenta la colaboración y la comunicación
• Escribir tests de aceptación con Cucumber no son
sólo tests, son especificaciones ejecutables

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Cucumber
• Los tests de Cucumber pueden ser escritos y leídos
por los stakeholders, como en un documento de
requisitos
• Los tests de Cucumber pueden ser ejecutados por
una máquina y ver su nivel de cumplimiento
• La documentación se mantiene actualizada y refleja
el estado del proyecto
• Gherkin es el lenguaje que usa Cucumber para
escribir las especificaciones

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Cucumber
Feature: Sign up
Sign up should be quick and friendly.
Scenario: Successful sign up
New users should get a confirmation email and be
by the
site once signed in.

greeted personally

Given I have chosen to sign up
When I sign up with valid details
Then I should receive a confirmation email
And I should see a personalized greeting message
Scenario: Duplicate email
Where someone tries to create an account for an email
address that already exists.
Given I have chosen to sign up
But I enter an email address that has already registered
Then I should be told that the email is already registered
And I should be offered the option to recover my password
© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Cucumber
• Podemos indicar que varios escenarios compartan
un mismo background

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Cucumber
Feature: Change PIN
As soon as the bank issues new cards to customers, they are
supplied with a Personal Identification Number (PIN) that
is randomly generated by the system.
In order to be able to change it to something they can easily
remember, customers with new bank cards need to be able to
change their PIN using the ATM.
Background:
Given I have been issued a new card
And I insert the card, entering the correct PIN
And I choose "Change PIN" from the menu
Scenario: Change PIN successfully
When I change the PIN to 9876
Then the system should remember my PIN is now 9876
Scenario: Try to change PIN to the same as before
When I try to change the PIN to the original PIN number
Then I should see a warning message
And the system should not have changed my PIN

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Cucumber
• Podemos indicar los datos que se usan en un
escenario en forma de tabla
Given a User "Michael Jackson" born on August 29, 1958
And a User "Elvis" born on January 8, 1935
And a User "John Lennon" born on October 9, 1940
Given these Users:
| name
| date of
| Michael Jackson | August 29,
| Elvis
| January 8,
| John Lennon
| October 9,

birth
1958
1935
1940

|
|
|
|

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Cucumber
• Podemos ejecutar un mismo escenario con varios valores de entrada y
de salida
Scenario Outline: Withdraw fixed amount
Given I have <Balance> in my account
When I choose to withdraw the fixed amount of <Withdrawal>
Then I should <Outcome>
And the balance of my account should be <Remaining>
Examples: Successful withdrawal
| Balance | Withdrawal | Outcome
| Remaining |
| $500
| $50
| receive $50 cash | $450
|
| $500
| $100
| receive $100 cash | $400
|
Examples: Attempt to withdraw too much
| Balance | Withdrawal | Outcome
| Remaining |
| $100
| $200
| see an error message | $100
|
| $0
| $50
| see an error message | $0
|

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Cucumber
• Podemos anotar los escenarios para ejecutar sólo
los que nos interesen
@slow @widgets @nightly
Scenario: Generate overnight report
Given I am logged in
And there is a report "Total widget sales
history"

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Enlaces de interés
• http://cukes.info/
• https://github.com/cucumber/cucumber/wiki
• http://pragprog.com/book/hwcuc/the-cucumber-book
• http://pragprog.com/book/dhwcr/cucumber-recipes

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Caso práctico

• https://github.com/tmoreno/tutorialcucumber

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Fin

Gracias por vuestra atención
¿Alguna pregunta?

Tomás Moreno Bernal (tomas.moreno@um.es)
@tmorenobernal

© 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.

Weitere ähnliche Inhalte

Andere mochten auch

Andere mochten auch (11)

En 20 minutos ... HTML5 + CSS3
En 20 minutos ... HTML5 + CSS3En 20 minutos ... HTML5 + CSS3
En 20 minutos ... HTML5 + CSS3
 
Medea. Metodología de desarrollo en ÁTICA
Medea. Metodología de desarrollo en ÁTICAMedea. Metodología de desarrollo en ÁTICA
Medea. Metodología de desarrollo en ÁTICA
 
En 20 minutos ... Arquitectura Oracle
En 20 minutos ... Arquitectura OracleEn 20 minutos ... Arquitectura Oracle
En 20 minutos ... Arquitectura Oracle
 
En 20 minutos ... jBPM
En 20 minutos ... jBPMEn 20 minutos ... jBPM
En 20 minutos ... jBPM
 
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyectoEn 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
 
En 20 minutos ... Charla drools
En 20 minutos ... Charla droolsEn 20 minutos ... Charla drools
En 20 minutos ... Charla drools
 
Experiencia de Usuario (UX)
Experiencia de Usuario (UX)Experiencia de Usuario (UX)
Experiencia de Usuario (UX)
 
En 20 minutos... Buenas Practicas SSL
En 20 minutos... Buenas Practicas SSLEn 20 minutos... Buenas Practicas SSL
En 20 minutos... Buenas Practicas SSL
 
Auditoria en BD de las Sesiones Web
Auditoria en BD de las Sesiones WebAuditoria en BD de las Sesiones Web
Auditoria en BD de las Sesiones Web
 
En 20 minutos ... Responsive Design
En 20 minutos ... Responsive DesignEn 20 minutos ... Responsive Design
En 20 minutos ... Responsive Design
 
En 20 minutos ... Chrome Developer Tools
En 20 minutos ... Chrome Developer ToolsEn 20 minutos ... Chrome Developer Tools
En 20 minutos ... Chrome Developer Tools
 

Ähnlich wie En 20 minutos ... Tests de Aceptación con Cucumber

Flyer general datos tecnicos equipo bis
Flyer general datos tecnicos equipo bisFlyer general datos tecnicos equipo bis
Flyer general datos tecnicos equipo bissicaap
 
Proyecto rh en linea
Proyecto rh en lineaProyecto rh en linea
Proyecto rh en lineaOmar Sánchez
 
Equipos de Computo Fondo Emprendedor Secretaria de Economia
Equipos de Computo Fondo Emprendedor Secretaria de EconomiaEquipos de Computo Fondo Emprendedor Secretaria de Economia
Equipos de Computo Fondo Emprendedor Secretaria de Economiasicaap
 
Proceso Logístico Aplicado, Stakeholders, Ventaja Competitiva
Proceso Logístico Aplicado, Stakeholders, Ventaja CompetitivaProceso Logístico Aplicado, Stakeholders, Ventaja Competitiva
Proceso Logístico Aplicado, Stakeholders, Ventaja CompetitivaHYAM
 
Propuesta Reto Revalida: Smartplace
Propuesta Reto Revalida: SmartplacePropuesta Reto Revalida: Smartplace
Propuesta Reto Revalida: Smartplacesmartplace
 
Smartplace: Reto Certificación en Línea
Smartplace: Reto Certificación en LíneaSmartplace: Reto Certificación en Línea
Smartplace: Reto Certificación en Líneasmartplace
 
Project vote Pseudoimplementacióm
Project vote PseudoimplementaciómProject vote Pseudoimplementacióm
Project vote Pseudoimplementaciómcarmensp
 
Project vote Pseudoimplementación
Project vote PseudoimplementaciónProject vote Pseudoimplementación
Project vote Pseudoimplementacióncarmensp
 
Semana 1 - 2.pptx
Semana 1 - 2.pptxSemana 1 - 2.pptx
Semana 1 - 2.pptxjhoedmon
 
Presentación Jorge Quiroga | Blacksip - eCommerce Day Bogotá 2017
Presentación Jorge Quiroga | Blacksip - eCommerce Day Bogotá 2017Presentación Jorge Quiroga | Blacksip - eCommerce Day Bogotá 2017
Presentación Jorge Quiroga | Blacksip - eCommerce Day Bogotá 2017eCommerce Institute
 
Proyecto tics - Sistema de seguridad
Proyecto tics - Sistema de seguridadProyecto tics - Sistema de seguridad
Proyecto tics - Sistema de seguridadClinica Internacional
 
Actividad de aprendizaje 1.4
Actividad de aprendizaje 1.4Actividad de aprendizaje 1.4
Actividad de aprendizaje 1.4edgar_g05
 
Computacion 3 cb09302 2013
Computacion 3 cb09302 2013Computacion 3 cb09302 2013
Computacion 3 cb09302 2013Maestros Online
 
Capitulo 2 estudio de mercado.docx hacer
Capitulo 2 estudio de mercado.docx hacerCapitulo 2 estudio de mercado.docx hacer
Capitulo 2 estudio de mercado.docx hacerAmayrani Lo Quevedo
 

Ähnlich wie En 20 minutos ... Tests de Aceptación con Cucumber (20)

Tests de aceptación con cucumber
Tests de aceptación con cucumberTests de aceptación con cucumber
Tests de aceptación con cucumber
 
Que es
Que esQue es
Que es
 
Flyer general datos tecnicos equipo bis
Flyer general datos tecnicos equipo bisFlyer general datos tecnicos equipo bis
Flyer general datos tecnicos equipo bis
 
Proyecto rh en linea
Proyecto rh en lineaProyecto rh en linea
Proyecto rh en linea
 
Equipos de Computo Fondo Emprendedor Secretaria de Economia
Equipos de Computo Fondo Emprendedor Secretaria de EconomiaEquipos de Computo Fondo Emprendedor Secretaria de Economia
Equipos de Computo Fondo Emprendedor Secretaria de Economia
 
Proceso Logístico Aplicado, Stakeholders, Ventaja Competitiva
Proceso Logístico Aplicado, Stakeholders, Ventaja CompetitivaProceso Logístico Aplicado, Stakeholders, Ventaja Competitiva
Proceso Logístico Aplicado, Stakeholders, Ventaja Competitiva
 
Proyecto_hoja_2 (2).pdf
Proyecto_hoja_2 (2).pdfProyecto_hoja_2 (2).pdf
Proyecto_hoja_2 (2).pdf
 
Propuesta Reto Revalida: Smartplace
Propuesta Reto Revalida: SmartplacePropuesta Reto Revalida: Smartplace
Propuesta Reto Revalida: Smartplace
 
Smartplace: Reto Certificación en Línea
Smartplace: Reto Certificación en LíneaSmartplace: Reto Certificación en Línea
Smartplace: Reto Certificación en Línea
 
Project vote Pseudoimplementacióm
Project vote PseudoimplementaciómProject vote Pseudoimplementacióm
Project vote Pseudoimplementacióm
 
Project vote Pseudoimplementación
Project vote PseudoimplementaciónProject vote Pseudoimplementación
Project vote Pseudoimplementación
 
Proyecto enrique
Proyecto enriqueProyecto enrique
Proyecto enrique
 
Semana 1 - 2.pptx
Semana 1 - 2.pptxSemana 1 - 2.pptx
Semana 1 - 2.pptx
 
Presentación Jorge Quiroga | Blacksip - eCommerce Day Bogotá 2017
Presentación Jorge Quiroga | Blacksip - eCommerce Day Bogotá 2017Presentación Jorge Quiroga | Blacksip - eCommerce Day Bogotá 2017
Presentación Jorge Quiroga | Blacksip - eCommerce Day Bogotá 2017
 
Proyecto tics - Sistema de seguridad
Proyecto tics - Sistema de seguridadProyecto tics - Sistema de seguridad
Proyecto tics - Sistema de seguridad
 
Actividad de aprendizaje 1.4
Actividad de aprendizaje 1.4Actividad de aprendizaje 1.4
Actividad de aprendizaje 1.4
 
Propuesta en extenso para app de CFE.
Propuesta en extenso para app de CFE.Propuesta en extenso para app de CFE.
Propuesta en extenso para app de CFE.
 
Computacion 3 cb09302 2013
Computacion 3 cb09302 2013Computacion 3 cb09302 2013
Computacion 3 cb09302 2013
 
Capitulo 2 estudio de mercado.docx hacer
Capitulo 2 estudio de mercado.docx hacerCapitulo 2 estudio de mercado.docx hacer
Capitulo 2 estudio de mercado.docx hacer
 
Medios de Pago para e-Commerce
Medios de Pago para e-Commerce Medios de Pago para e-Commerce
Medios de Pago para e-Commerce
 

Kürzlich hochgeladen

Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramDIDIERFERNANDOGUERRE
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 

Kürzlich hochgeladen (20)

Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ram
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 

En 20 minutos ... Tests de Aceptación con Cucumber

  • 1. Tests de aceptación con Cucumber © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 2. Contenido 1. Tests de aceptación 2. Cucumber 3. Caso práctico © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 3. Tests de aceptación    La idea viene de eXtreme Programming (XP) Se llaman tests de aceptación porque expresan lo que el software tiene que hacer para que los stakeholders lo consideren “aceptable” Por lo tanto desarrolladores y stakeholders son los que escriben las pruebas © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 4. Tests de aceptación • Los tests unitarios nos dicen que lo que estamos desarrollando está correcto • Los tests de aceptación nos dicen que lo que estamos desarrollando es lo correcto © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 5. Tests de aceptación • Aumenta el feedback  se reducen los malentendidos • Surge un lenguaje común que todos los relacionados con el proyecto entienden • Al ser escritos como ejemplos estimula la imaginación de los participantes © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 6. Cucumber • Cucumber hace fácil leer y escribir tests de aceptación por cualquier miembro del equipo • Cucumber se convierte en una herramienta que fomenta la colaboración y la comunicación • Escribir tests de aceptación con Cucumber no son sólo tests, son especificaciones ejecutables © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 7. Cucumber • Los tests de Cucumber pueden ser escritos y leídos por los stakeholders, como en un documento de requisitos • Los tests de Cucumber pueden ser ejecutados por una máquina y ver su nivel de cumplimiento • La documentación se mantiene actualizada y refleja el estado del proyecto • Gherkin es el lenguaje que usa Cucumber para escribir las especificaciones © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 8. Cucumber Feature: Sign up Sign up should be quick and friendly. Scenario: Successful sign up New users should get a confirmation email and be by the site once signed in. greeted personally Given I have chosen to sign up When I sign up with valid details Then I should receive a confirmation email And I should see a personalized greeting message Scenario: Duplicate email Where someone tries to create an account for an email address that already exists. Given I have chosen to sign up But I enter an email address that has already registered Then I should be told that the email is already registered And I should be offered the option to recover my password © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 9. Cucumber • Podemos indicar que varios escenarios compartan un mismo background © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 10. Cucumber Feature: Change PIN As soon as the bank issues new cards to customers, they are supplied with a Personal Identification Number (PIN) that is randomly generated by the system. In order to be able to change it to something they can easily remember, customers with new bank cards need to be able to change their PIN using the ATM. Background: Given I have been issued a new card And I insert the card, entering the correct PIN And I choose "Change PIN" from the menu Scenario: Change PIN successfully When I change the PIN to 9876 Then the system should remember my PIN is now 9876 Scenario: Try to change PIN to the same as before When I try to change the PIN to the original PIN number Then I should see a warning message And the system should not have changed my PIN © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 11. Cucumber • Podemos indicar los datos que se usan en un escenario en forma de tabla Given a User "Michael Jackson" born on August 29, 1958 And a User "Elvis" born on January 8, 1935 And a User "John Lennon" born on October 9, 1940 Given these Users: | name | date of | Michael Jackson | August 29, | Elvis | January 8, | John Lennon | October 9, birth 1958 1935 1940 | | | | © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 12. Cucumber • Podemos ejecutar un mismo escenario con varios valores de entrada y de salida Scenario Outline: Withdraw fixed amount Given I have <Balance> in my account When I choose to withdraw the fixed amount of <Withdrawal> Then I should <Outcome> And the balance of my account should be <Remaining> Examples: Successful withdrawal | Balance | Withdrawal | Outcome | Remaining | | $500 | $50 | receive $50 cash | $450 | | $500 | $100 | receive $100 cash | $400 | Examples: Attempt to withdraw too much | Balance | Withdrawal | Outcome | Remaining | | $100 | $200 | see an error message | $100 | | $0 | $50 | see an error message | $0 | © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 13. Cucumber • Podemos anotar los escenarios para ejecutar sólo los que nos interesen @slow @widgets @nightly Scenario: Generate overnight report Given I am logged in And there is a report "Total widget sales history" © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 14. © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 15. Enlaces de interés • http://cukes.info/ • https://github.com/cucumber/cucumber/wiki • http://pragprog.com/book/hwcuc/the-cucumber-book • http://pragprog.com/book/dhwcr/cucumber-recipes © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 16. Caso práctico • https://github.com/tmoreno/tutorialcucumber © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
  • 17. Fin Gracias por vuestra atención ¿Alguna pregunta? Tomás Moreno Bernal (tomas.moreno@um.es) @tmorenobernal © 2013. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.