Webinar Under Test | 31 de marzo 2023
Una breve introducción a las pruebas holísticas y cómo podemos usar este modelo a nivel de equipo para potenciar las pruebas.
jigsolabs.com @claubs_uy
PRUEBAS HOLÍSTICAS:
QUÉ SON Y CÓMO APLICAR
ESTE MODELO
UNDER TEST | 31 de Marzo 2023
Ing. Claudia Badell
claudia.badell@jigsolabs.com
@claubs_uy
Basado en material de Janet Gregory y Lisa Crispin
jigsolabs.com @claubs_uy
Co-organizodora
testinguy.org
• +17 años de experiencia en testing
• Product Development Team Lead
• Senior Quality Engineer, Team Lead
• Senior Quality Engineer
• Test Manager
• Tester
• Analista de Requerimientos
• Docente en la Facultad de Ingeniería,
Universidad de la República
• Scrum Master
• Curso Holistic Testing for Continuous Delivery con Janet Gregory
y Lisa Crispin
• Curso Agile Testing for the Whole Team con Janet Gregory
• Tutorial Agile Testing Essentials con Janet Gregory y Lisa Crispin
• Curso Rapid Software Testing con Michael Bolton
• Tutorial Using Risk to Guide Testing con Michael Bolton
• Cursos de la AST(Foundations & Bug Advocacy)
• ISTQB Foundation
• Agile Test Automation Certification (ICP-ATA)
Ingeniera en
Computación
Instructora y Traductora al
Español del curso Holistic Testing:
estrategias para equipos ágiles
agiletestingfellow.com
Travel freak
valijasready.com
Oradora en conferencias internacionales,
meetups (Brasil, Chile y Uruguay) y
webinars
Consultora y Coach:
Testing de Software y
Metodologías Agiles
jigsolabs.com
jigsolabs.com @claubs_uy
• Todo el equipo es responsable de las pruebas y calidad
• Los testers son parte del equipo
• Las pruebas se consideran desde el inicio y durante todo
el proceso
• Hay una cultura a nivel de equipo con foco en la
prevención de defectos (más que en la detección)
• El desarrollo es guiado por las pruebas
• La automatización da soporte a que el equipo tenga una
cadencia sostenible para realizar entregas de valor
frecuentes
• Retroalimentación temprana y frecuente
LAS PRUEBAS EN UN CONTEXTO ÁGIL
jigsolabs.com @claubs_uy
VISUALIZANDO LAS PRUEBAS A NIVEL DE
EQUIPO EN UN CONTEXTO ÁGIL
• Mapas mentales
• Diagramas de flujo
• Máquinas de estado
• Prototipos en papel y/o digitales
• Mapas de impacto
• Example mapping
• Matrices de Pruebas
• Reportes y gráficos sobre la ejecución
de las pruebas automatizadas
• Planes de prueba livianos
• ¡La conversación!
• …
jigsolabs.com @claubs_uy
CUADRANTES DE PRUEBAS ÁGILES
Q2 Q3
Q1 Q4
Pruebas Exploratorias
Workflows
Pruebas de Integración (orientadas
al negocio)
Pruebas de Usabilidad
Pruebas de Aceptación (UAT)
Pruebas de Carga
Pruebas de Seguridad
Otros Atributos de Calidad
Pruebas Unitarias
Pruebas de Componentes
(a nivel de código)
Ejemplos
Pruebas de Historias
Pruebas de Experiencia de Usuario
Prototipos
Simulaciones
Pruebas
que
guían
el
desarrollo
Pruebas
que
evalúan
el
producto
Pruebas orientadas al negocio
Pruebas orientadas a la tecnología
Fuente: Brian Marick
jigsolabs.com @claubs_uy
PIRÁMIDE DE AUTOMATIZACIÓN
Fuente: Mike Cohn
Pruebas manuales /
Pruebas exploratorias
A través de la
interfaz gráfica
Pruebas Unitarias
Pruebas de Componentes
Capa de Servicio / API
Reglas de negocio
Pruebas funcionales
Pruebas E2E
jigsolabs.com @claubs_uy
• Probar la infraestructura
• Ejecutar las pruebas automatizadas
• Probar el pipeline
• Probar los atributos de calidad
• Probar el sistema
• Probar en producción
• Utilizar feature toggles
• Utilizar ambientes blue/green
@janetgregoryca
• Identificar los riesgos
• Probar los supuestos
• Crear historias testeables
• Aplicar ATDD / BDD
• Usar Example mapping
• Crear prototipos
• Determinar qué observar
o monitorear
• Hipotetizar y
adaptarse
• Observar cómo los usuarios utilizan
el producto
• Monitorear advertencias y errores
• Automatizar las pruebas
• Instrumentar el código
• Probar las historias
• Probar las features
• Probar las ideas
• Determinar el valor
jigsolabs.com @claubs_uy
• Probar la infraestructura
• Ejecutar las pruebas automatizadas
• Probar el pipeline
• Probar los atributos de calidad
• Probar el sistema
• Probar en producción
• Utilizar feature toggles
• Utilizar ambientes blue/green
• Probar las ideas
• Determinar el valor
@janetgregoryca
• Identificar los riesgos
• Probar los supuestos
• Crear historias testeables
• Aplicar ATDD / BDD
• Usar Example mapping
• Crear prototipos
• Determinar qué observar
o monitorear
• Hipotetizar y
adaptarse
• Observar cómo los usuarios utilizan
el producto
• Monitorear advertencias y errores
• Automatizar las pruebas
• Instrumentar el código
• Probar las historias
• Probar las features
jigsolabs.com @claubs_uy
• Probar la infraestructura
• Ejecutar las pruebas automatizadas
• Probar el pipeline
• Probar los atributos de calidad
• Probar el sistema
• Probar en producción
• Utilizar feature toggles
• Utilizar ambientes blue/green
@janetgregoryca
• Identificar los riesgos
• Probar los supuestos
• Crear historias testeables
• Aplicar ATDD / BDD
• Usar Example mapping
• Crear prototipos
• Determinar qué observar
o monitorear
• Hipotetizar y
adaptarse
• Observar cómo los usuarios utilizan
el producto
• Monitorear advertencias y errores
• Probar las ideas
• Determinar el valor
• Automatizar las pruebas
• Instrumentar el código
• Probar las historias
• Probar las features
jigsolabs.com @claubs_uy
• Probar la infraestructura
• Ejecutar las pruebas automatizadas
• Probar el pipeline
• Probar los atributos de calidad
• Probar el sistema
• Probar en producción
• Utilizar feature toggles
• Utilizar ambientes blue/green
@janetgregoryca
• Identificar los riesgos
• Probar los supuestos
• Crear historias testeables
• Aplicar ATDD / BDD
• Usar Example mapping
• Crear prototipos
• Determinar qué observar
o monitorear
• Hipotetizar y
adaptarse
• Observar cómo los usuarios utilizan
el producto
• Monitorear advertencias y errores
• Probar las ideas
• Determinar el valor
• Automatizar las pruebas
• Instrumentar el código
• Probar las historias
• Probar las features
jigsolabs.com @claubs_uy
• Probar en producción
• Utilizar feature toggles
• Utilizar ambientes blue/green
@janetgregoryca
• Identificar los riesgos
• Probar los supuestos
• Crear historias testeables
• Aplicar ATDD / BDD
• Usar Example mapping
• Crear prototipos
• Determinar qué observar
o monitorear
• Hipotetizar y
adaptarse
• Observar cómo los usuarios utilizan
el producto
• Monitorear advertencias y errores
• Probar las ideas
• Determinar el valor
• Automatizar las pruebas
• Instrumentar el código
• Probar las historias
• Probar las features
• Probar la infraestructura
• Ejecutar las pruebas automatizadas
• Probar el pipeline
• Probar los atributos de calidad
• Probar el sistema
jigsolabs.com @claubs_uy
• Probar la infraestructura
• Ejecutar las pruebas automatizadas
• Probar el pipeline
• Probar los atributos de calidad
• Probar el sistema
@janetgregoryca
• Identificar los riesgos
• Probar los supuestos
• Crear historias testeables
• Aplicar ATDD / BDD
• Usar Example mapping
• Crear prototipos
• Determinar qué observar
o monitorear
• Hipotetizar y
adaptarse
• Observar cómo los usuarios utilizan
el producto
• Monitorear advertencias y errores
• Probar las ideas
• Determinar el valor
• Automatizar las pruebas
• Instrumentar el código
• Probar las historias
• Probar las features
• Probar en producción
• Utilizar feature toggles
• Utilizar ambientes blue/green
jigsolabs.com @claubs_uy
• Probar la infraestructura
• Ejecutar las pruebas automatizadas
• Probar el pipeline
• Probar los atributos de calidad
• Probar el sistema
• Probar en producción
• Utilizar feature toggles
• Utilizar ambientes blue/green
@janetgregoryca
• Identificar los riesgos
• Probar los supuestos
• Crear historias testeables
• Aplicar ATDD / BDD
• Usar Example mapping
• Crear prototipos
• Determinar qué observar
o monitorear
• Probar las ideas
• Determinar el valor
• Automatizar las pruebas
• Instrumentar el código
• Probar las historias
• Probar las features
• Observar cómo los usuarios utilizan
el producto
• Monitorear advertencias y errores
• Hipotetizar y
adaptarse
jigsolabs.com @claubs_uy
• Explicita que las pruebas son una actividad, no una fase
• Nos hace pensar en las pruebas antes, durante y luego de la
puesta a producción
• Refuerza que las pruebas y calidad son una responsabilidad
compartida a nivel de equipo
• Nos permite visualizar a nivel de equipo distintos tipos de
pruebas que potencialmente pueden aplicar a nuestro contexto
• Nos permite identificar habilidades a desarrollar en el equipo
MODELO: PRUEBAS HOLÍSTICAS
jigsolabs.com @claubs_uy
REFERENCIAS
Agile Testing Condensed: A Brief Introduction, Janet Gregory y Lisa Crispin
https://leanpub.com/agiletesting-condensed
Testing From A Holistic Point Of View, Janet Gregory
https://janetgregory.ca/testing-from-a-holistic-point-of-view/
Holistic Testing Donkeys & Dragons #10, Janet Gregory y Lisa Crispin
https://www.youtube.com/watch?v=igtSEcCLftk
Holistic Testing in DevOps, Janet Gregory
https://www.youtube.com/watch?v=5XtWOYSJvdY
https://agiletestingfellow.com/blog/