Top Banner
PhD. Federico Toledo federico.toledo@abstracta. com.uy Twitter: @fltoledo Hands-on de Testing Exploratorio
36

Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Jan 20, 2017

Download

Software

Federico Toledo
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

PhD. Federico [email protected]: @fltoledo

Hands-on de Testing Exploratorio

Page 3: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

¿Cómo se suele hacer?

• Antipatrón del Cono de Helado

Page 4: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Testing “manual”• Clasificación de enfoques– Ad-hoc– Exploratorio– Planificado

Page 5: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Ad-hoc• Sin un plan, realizado en el momento

sin un objetivo en mente, sin un método claro.

• Poco profesional. Cero control. Cero seguimiento. Cero trazabilidad.

• No queremos hacerlo.

Page 6: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Exploratorio vs Planificado

• Quiero visitar una ciudad nueva.

Page 7: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Exploratorio vs Planificado

• Enfoque Planificado:– Previo al viaje miro el mapa y una guía.– Veo qué cosas interesantes pueden

haber para visitar. – Los ordeno según lo que más me gusta. – Veo cuánto tiempo tengo y planifico

cuánto tiempo voy a estar en cada lugar.

Page 8: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Exploratorio vs Planificado

• Enfoque Exploratorio:– Llevo el mapa y la Guía y los voy mirando en

el sitio.– Ir preguntando qué visitar, en base a lo que

voy descubriendo voy definiendo qué otra cosa quiero ver.

– Voy marcando en el mapa lo que voy visitando.

– Me defino el tiempo que tengo para recorrer, y en base a eso me voy organizando para ver todo lo que pueda llegar a encontrar.

Page 9: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Exploratorio vs Planificado

• Ventajas Exploratorio:– No tuve que planificar lo que quería ver. – En el mismo lugar fui decidiendo qué ver y

qué no, y qué me gustaba más y qué no.– Dejé registradas las cosas que visité.

• Ventajas Planificado:– Puedo compartir el plan con otro. – Puedo organizarme y prever cuánto voy a

necesitar, si me alcanzan los días previstos para visitar todo lo que me gusta.

Page 10: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Exploratorio• Estrategia de testing exploratorio– Definido como el diseño, ejecución y

aprendizaje de la aplicación de forma simultánea, donde utilizamos lo aprendido de experimentos anteriores en las siguientes pruebas.

• Ideal para cuando:– Tenemos poco tiempo.– Conocemos poco el producto.

Page 11: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Pruebas planificadas• Dos etapas bien definidas (al punto

que lo podrían hacer dos personas diferentes y con skills distintos).

Diseño Ejecución

Planilla con casos de prueba.

Planilla con resultados de ejecución.

Page 12: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Técnicas del Enfoque de Pruebas Planificadas

• Ejemplos – Valores límites – Particiones de equivalencia – Tablas de decisión – Árboles de decisión– Casos de uso–Máquinas de estado

Page 13: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

¿Qué es Testing Exploratorio?

“Es un estilo de testear software que enfatiza, la libertad personal y responsabilidad individual del tester, para optimizar de manera continua el valor de su trabajo, tratando al aprendizaje, diseño y ejecución de pruebas, como actividades que se apoyan mutuamente y corren en paralelo a lo largo de un proyecto.” –Cem Kaner

Page 14: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Testing Exploratorio basado en Sesiones

“Una sesión es una unidad básica de trabajo de testing.No es ni un caso de prueba, ni un reporte de defectos. Es un bloque ininterrumpido y revisable, donde hay evidencias del trabajo en nuestra misión de testing.” –Jonathan Bach

Page 15: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

• Se creó con el propósito de:– Facilitar un registro sobre el progreso de

los testers.– Proveer un medio para organizar y

reportar el cubrimiento del trabajo hecho.

– Deben ser ininterrumpidas.

Testing Exploratorio basado en Sesiones

Page 16: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Componentes de una Sesión

1. MISIÓN

2. INICIO

5. ARCHIVOS DE DATOS

3. TESTER

4. DIVISIÓN DE TAREAS

6. NOTAS DE PRUEBAS

7. RIESGOS Y DEFECTOS

8. INCONVENIENTES

Page 17: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Hands-on• Ejecutar una session– https://www.zetacuentas.com/– Usuario: • [email protected]• testinguy

Page 18: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Herramientas • Mind-maps– Xmind– www.mindmup.com

• Timer • Notas con estructura de sesión– Papel– Blog de notas– Pizarra

Page 19: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Timer

Page 20: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo
Page 21: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo
Page 22: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo
Page 23: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Métricas de una Sesión

• Las métricas son extraídas de:– Cantidad de sesiones que se hayan

completado (cobertura).– Cantidad de defectos y problemas que se

hayan encontrado.– Porcentaje de tiempo invertido en:

• Armado de la sesión,• Diseño y Ejecución de pruebas,• Investigación y Reporte de defectos.

– Porcentaje de tiempo invertido en:• Misión y oportunidad.

Page 24: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Métricas de una Sesión

• Deberíamos analizar las métricas y definir los siguientes pasos.

• La idea es que ciclo a ciclo se vaya mejorando el testing.

Page 25: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Métricas de una SesiónSesión Fecha Hora Dur. Mis. Op. Testing Def. Armado #Def. #Inc. #Testers

ET-S01 Fecha Hora 1h 1h 0 0.8 0.1 0.1 1 3 1

ET-S02 Fecha Hora 2h 1.5h 0.5h 0.7 0.2 0.1 5 1 2

ET-S03 Fecha Hora 2h 2h 0h 0.5 0.4 0.1 8 0 1

ET-S04 Fecha Hora 2h 1h 1h 0.9 0.1 0 1 0 1

Page 26: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Métricas de una SesiónSesión Fecha Hora Dur. Mis. Op. Testing Def. Armado #Def. #Inc. #Testers

ET-S01 Fecha Hora 1h 1h 0 0.8 0.1 0.1 1 3 1

ET-S02 Fecha Hora 2h 1.5h 0.5h 0.7 0.2 0.1 5 1 2

ET-S03 Fecha Hora 2h 2h 0h 0.5 0.4 0.1 8 0 1

ET-S04 Fecha Hora 2h 1h 1h 0.9 0.1 0 1 0 1

Page 27: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Métricas de una SesiónSesión Fecha Hora Dur. Mis. Op. Testing Def. Armado #Def. #Inc. #Testers

ET-S01 Fecha Hora 1h 1h 0 0.8 0.1 0.1 1 3 1

ET-S02 Fecha Hora 2h 1.5h 0.5h 0.7 0.2 0.1 5 1 2

ET-S03 Fecha Hora 2h 2h 0h 0.5 0.4 0.1 8 0 1

ET-S04 Fecha Hora 2h 1h 1h 0.9 0.1 0 1 0 1

Page 28: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Conclusiones (1/4)• Facilita la planificación:– Time slots bien definidos.

• Mejora al tester, su motivación y habilidades.

• Facilita el análisis de cobertura. • Mejora continua.

Page 29: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Conclusiones (2/4)• De mucha utilidad para: – Brindar feedback y resultados de forma

rápida.– Adquirir nuevo conocimiento a lo largo de

una sprint, iteración o ciclo de testing.– Revelar nuevos tipos de defectos e

inconvenientes.–Mejorar las habilidades y conocimiento

en la lógica de negocio del tester.

Page 30: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

• Técnicas del Enfoque de Pruebas Planificadas: – Valores límites – Particiones de equivalencia – Tablas de decisión – Árboles de decisión– Casos de uso–Máquinas de estado

Todas aplicables a

testing exploratorio

Muchas veces de manera

inconsciente

Conclusiones (3/4)

Page 31: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Casos de prueba

Exploratorio

1 hora

2 horas

Conclusiones (4/4)

Page 32: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Repasemos la definición de Cem Kaner…

“Es un estilo de testear software que enfatiza, la libertad personal yresponsabilidad individual del tester, para optimizar de manera continua el valor de su trabajo, tratando al aprendizaje, diseño y ejecución de pruebas, como actividades que se apoyan mutuamente y corren en paralelo a lo largo de un proyecto.”

Page 33: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

PhD. Federico [email protected]: @fltoledo

¡Gracias!

http://www.slideshare.net/FedericoToledo

Page 34: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo
Page 35: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

TestingUY 2016• Será el 26 y 27 de abril. • Está abierto el período para enviar

propuestas. ¡Anímense!

• Junto a Gabriel Montero queremos enviar una propuesta de Testing Exploratorio para Testing Ágil. – bit.do/encTestingUY

Page 36: Meetup TestingUY 2016 - hands-on de testing exploratorio - Federico Toledo

Introducción a las Pruebas de Sistemas

de Información

http://blog.abstracta.com.uy/