Pruebas de software agiles
-
Upload
guino-henostroza -
Category
Software
-
view
70 -
download
6
Transcript of Pruebas de software agiles
Prácticas modernas de pruebas basadas en Lean/Agile
Pruebas de Software Ágiles
Contenido
• Pensamiento (Mindset) de Pruebas Agiles
•Rol del Tester en un Equipo Ágil
•Cuadrantes de las Pruebas Agiles
• Especificaciones Ejecutables
Pensamiento (Mindset) de Pruebas Agiles
•Encuesta Inicial
• Ponte de pie si alguno de estos problemas te
sucede:
las pruebas siempre se hacen al final
la automatización se hace al final
los testers no pueden trabajar hasta que el
desarrollo haya sido hecho
hay presión al final del sprint
se buscan culpables de los defectos (es culpa
de X, etc.)
Pensamiento (Mindset) de Pruebas Agiles
• La prueba es una actividad no una fase
• Evitar defectos en lugar de encontrar defectos
•No ser un verificador, ser un probador (tester)
•No tratar de quebrar el Sistema, en lugar de ello
ayudar a construir el mejor Sistema posible
• El equipo entero es responsable de la calidad, no
solo el probador (tester)
Pensamiento (Mindset) de Pruebas Agiles
•ACTIVIDAD
•Cada Grupo recibe un hoja de
Manifiesto de las Pruebas con 5 valores
que debe de llenar en la forma:
Nosotros valoramos __________sobre_______________
15
Pensamiento (Mindset) de Pruebas Agiles
Contenido
• Pensamiento (Mindset) de Pruebas Agiles
•Rol del Tester en un Equipo Ágil
•Cuadrantes de las Pruebas Agiles
• Especificaciones Ejecutables
Rol del Tester en un Equipo Ágil
• En un equipo ágil la Calidad es responsabilidad de
todos
•Cada miembro del equipo tiene actividades de
Calidad
• El rol del tester es mas versátil y abarca un amplio
rango de habilidades
• El tester tiene actividades durante todo el sprint
Rol del Tester en un Equipo Ágil
• Tareas típicas de un Tester
• Participar en el planeamiento y estimación del sprint
• Escribir los criterios de aceptación de cada ítem de un
sprint
• Capturar ejemplos como pruebas de aceptación
• Automatizar pruebas de humo y de regresión
• Realizar pruebas exploratorias
• Colaborar con clientes y programadores
• Participar en la reunión de revisión del producto
• Participar en la reunión de retrospectiva
Rol del Tester en un Equipo Ágil
• El Rol de Test Manager o QA Manager no existe dentro
de un equipo ágil
• Posibles actividades de un Test Manager o QA Manager
• Coaching, mentoría y desarrollo Profesional de los testers
• Conseguir los mejores testers y ponerlos a disposición de
un equipo
• Proveer soporte y escalamiento a los testers
• Facilitar la comunicación a través de varios equipos agiles
dentro de la organización
• Presupuestar o pronosticar el testing como servicio
dependiente de la organización
Rol del Tester en un Equipo Ágil
•Otros Roles de Testing, externos o compartidos
entre equipos:
• Tester de Performance
• Tester de Seguridad
• Tester de Usabilidad
Contenido
• Pensamiento (Mindset) de Pruebas Agiles
•Rol del Tester en un Equipo Ágil
•Cuadrantes de las Pruebas Agiles
• Especificaciones Ejecutables
Cuadrantes de las Pruebas Agiles
•Actividad Grupal
• Escribir tantos tipos de prueba como recuerde,
uno en cada Post-It
• Luego péguelos en la pared
5
Cuadrantes de las Pruebas Agiles
unit level
system level system or user acceptance level
system or operational acceptance level
Agile Testing Quadrant - Brian Marick
Cuadrantes de las Pruebas Agiles
Cuadrantes de las Pruebas Agiles
•CONSTRUIR SU CUADRANTE
• Cada Grupo tendrá su copia del Cuadrante de
las Pruebas
• Armar su cuadrante de las Pruebas en la Pared
• Colocar Post-its con los tipos de pruebas
identificados anteriormente, dentro del
cuadrante de las pruebas respectivo
• Luego de armar el cuadrante fíjese en el :
Esta mas enfocado en evitar defectos o en arreglarlos?
Contenido
• Pensamiento (Mindset) de Pruebas Agiles
•Rol del Tester en un Equipo Ágil
•Cuadrantes de las Pruebas Agiles
• Especificaciones Ejecutables
Especificaciones Ejecutables
• Especificaciones Ejecutables
• Sigue reglas de lenguaje simples (Dado, Cuando, Entonces)
• Permite escribir algo altamente legible y entendible por el
negocio
• Una especificación ejecutable es algo que funciona como
una aceptación automatizada
• Cuando los requerimientos cambian, las especificaciones
ejecutables son actualizadas desde un único lugar
Escenario: Obtención de puntos estándar desde unvuelo económico
Dado la distancia de vuelo entre Lima y Arequipa es 966 kmY yo soy un miembro de viajero frecuente estándarCuando vuelo de Lima hacia ArequipaEntonces debería ganar 483 puntos
Especificaciones Ejecutables
• Titulo, descripción y escenarios de una
Característica (Feature) en lenguaje GherkinEn Gherkin use la palabra Característica para indicar un titulo de característica
Una breve descripción de la característica a continuación del titulo
Uno o mas escenarios a continuación
Especificaciones Ejecutables
•Comentando y describiendo los escenarios
Cualquier cosa luego del titulo del escenario y antes que el primer Dadoes considerado como una descripción
Un comentario en Gherkincomienza con el carácter #
Especificaciones Ejecutables
•Usando tablas en pasos individuales
Proporciona tabla de datos para el paso Dado
Datos para el paso Entonces
Especificaciones Ejecutables
•Usando tablas de ejemplos La palabra clave Esquema del escenario marca esto como un escenario conducido por una tabla
Datos de prueba usados para este escenario
Especificaciones Ejecutables
• Background y Contexto
Estos pasos se ejecutaran antes de cada escenario
Escenarios son mas enfocados
Especificaciones Ejecutables
•Como se automatiza un escenario?
Especificaciones Ejecutables
• El resultado general del escenario dependerá de los resultados de los diferentes pasos.
PRACTICA
•Creando Especificaciones Ejecutables
con SpecFlow (Cucumber for .NET)
1. Configuración del Entorno
• Instalar la integración con el IDE
• Herramientas -> Extensiones y Actualizaciones
• SpecFlow for Visual Studio 2015
• NUnit 3 Test Adapter
•Configurar el Proyecto Visual Studio
• Crear un Proyecto de Prueba Unitaria
• Agregar paquete Nuget
• SpecFlow
• SpecFlow.NUnit
•Agregar un archivo de Feature (Característica)
• Agregar al Proyecto un “SpecFlow Feature File”.
2. Creando Características
• Bolsa de Trabajo En línea
• Acceso al Sistema En línea
• Colocación de ofertas de trabajo