Top Banner
PhD. Federico Toledo [email protected] Twitter: @fltoledo Taller de Testing Exploratorio
36

Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

Jan 20, 2017

Download

Technology

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: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

PhD. Federico [email protected]: @fltoledo

Taller de Testing Exploratorio

Page 2: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Entender el concepto de testing exploratorio y las particularidades.

• Ponerlo en práctica, desde su ejecución hasta su gestión.

• Entender los beneficios. • Imaginarse cómo planificar y

analizar los resultados obtenidos.

Objetivos

Page 3: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Breve teórico• Práctico grupal• Discusión

Agenda

Page 4: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Clasificación de enfoques– Ad-hoc– Exploratorio– Planificado

Testing “manual”

Page 5: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• 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.

Ad-hoc

Page 6: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

Quiero visitar una ciudad nueva

Exploratorio vs Planificado

Page 7: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• 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.

Exploratorio vs Planificado

Page 8: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• 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.

Exploratorio vs Planificado

Page 9: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• 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.

Exploratorio vs Planificado

Page 10: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• 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.

Exploratorio

Page 11: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Dos etapas bien definidas– Al punto que lo podrían hacer dos

personas diferentes y con skills distintos.

Pruebas planificadas

Diseño Ejecución

Planilla con casos de prueba.

Planilla con resultados de ejecución.

Page 12: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

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

Técnicas del Enfoque de Pruebas Planificadas

Page 13: Evento en Córdoba 2016 - Taller 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: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Testing Exploratorio = Testing

• El nombre especial fue necesario por la confusión que generó “Testing automatizado”, el cual debería llamarse “Checking automatizado”.

http://www.satisfice.com/blog/archives/category/testing-vs-checking

¿Qué es Testing Exploratorio?

Page 15: Evento en Córdoba 2016 - Taller 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 16: Evento en Córdoba 2016 - Taller 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 17: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Cuando probamos “algo” durante cierto tiempo, enfocados en “cierta característica”.

• 1 o 2 horas.• Buscando bugs en una feature nueva. • Puede o no incluir:

– Checklists– Casos de prueba– Más …

Sesión

Page 18: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

Componentes de una Sesión1. MISIÓN

2. INICIO

5. ARCHIVOS DE DATOS

3. TESTER

4. DIVISIÓN

DE TAREAS

6. NOTAS DE

PRUEBAS

7. RIESGOS Y

DEFECTOS

8. INCONVENIENTE

S

Page 19: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Descubrir– Conocer la nueva funcionalidad X

• Probar cierto aspecto– ¿Cómo funciona en Chrome?– Revisar lo qué sucede cuando el servicio X está caído

• Buscar cierto tipo de errores– Revisar ortografía en el módulo X– Revisar mensajes de error en X– Considerar manejo de entradas inválidas en X

• Analizar un factor de calidad– Revisar usabilidad de X– Analizar accesibilidad de la aplicación Android

• Explorar las dimensiones del producto– SFDPOT http://www.satisfice.com/articles/sfdpo.shtml

Misión

Page 20: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Mi misión es “probar los casos borde” para “la funcionalidad XX del sitema TAL”.

• Mi misión es “revisar la precisión de los mensajes de error” para “el tipo de errores XXXX”.

• Mi misión es “probar la vulnerabilidad a SQL Injection” para “el login y las páginas de administración”.

Ejemplos

Page 21: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Objetivo: – Ejecutar una session– http://opencart.abstracta.us/

• Herramientas– Timer – Notas con evidencia de la sesión

• Papel • TXT o DOC• Mind map• Pizarra • Herramienta de registro de test exploratorio

Hands-on

Page 22: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• 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.

Métricas de una Sesión

Page 23: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

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

• Ciclo a ciclo se va mejorando el testing.

Métricas de una Sesión

Page 24: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

Métricas de una SesiónSesió

n Fecha Hora Dur. Mis. Op. Testing Def

.Armad

o#Def

.#Inc

.#Tester

s

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 25: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

Sesión Fecha Hor

a 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

Métricas de una Sesión

Page 26: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

Métricas de una SesiónSesió

n Fecha Hora Dur. Mis. Op. Testing Def

.Armad

o#Def

.#Inc

.#Tester

s

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: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Herramienta para la gestión del testing exploratorio. – Manager: planificación, histórico, métricas.

• Web– Explorer: evidencia de sesiones

• Opensource• Multiplataforma (Java)

• Más info– http://relytest.com – http://blog.abstracta.com.uy/search/label/RelyTest

Relytest

Page 28: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

Relytest

Page 29: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• Facilita la planificación:– Time slots bien definidos.

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

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

Conclusiones (1/4)

Page 30: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

• 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.

Conclusiones (2/4)

Page 31: Evento en Córdoba 2016 - Taller 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

Conclusiones (3/4)

Todas aplicables a

testing exploratorio

Muchas veces de manera

inconsciente

Page 32: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

Casos de prueba

Exploratorio

Conclusiones (4/4)

1 hora

2 horas

{

Page 33: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

“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.”

Repasemos la definición de Cem Kaner…

Page 34: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

Introducción a las Pruebas de Sistemas

de Información

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

Page 35: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

http://www.slideshare.net/FedericoToledo

¡¡Gracias!!PhD. Federico [email protected]: @fltoledo

Page 36: Evento en Córdoba 2016 - Taller de testing exploratorio - Federico Toledo

Silicon Valley office425 Broadway Street Redwood City, CA

HeadquartersJose Ellauri 1126 Montevideo, Uruguay

www.abstracta.us