PhD. Federico Toledo
federico.toledo@abstracta.com.uy
Twitter: @fltoledo
Hands-on de Testing Exploratorio
Pirámide de Cohn
¿Cómo debería ser?
Más info:
http://abstracta.us/2015/10/26/best-testing-practices-
for-agile-teams-the-automation-pyramid/
¿Cómo se suele hacer?
• Antipatrón del Cono de
Helado
Testing “manual”
• Clasificación de enfoques
– Ad-hoc
– Exploratorio
– Planificado
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.
Exploratorio vs Planificado
• Quiero visitar una ciudad nueva.
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.
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.
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.
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.
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.
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
¿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
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
• 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
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
Hands-on
• Ejecutar una session
– https://www.zetacuentas.com/
– Usuario:
• ftoledo@abstracta.com.uy
• testinguy
Herramientas
• Mind-maps
– Xmind
– www.mindmup.com
• Timer
• Notas con estructura de sesión
– Papel
– Blog de notas
– Pizarra
Timer
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.
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.
Métricas de una Sesión
Sesió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
Métricas de una Sesión
Sesió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
Métricas de una Sesión
Sesió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
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.
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.
• 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)
Casos de prueba
Exploratorio
1 hora
2 horas
Conclusiones (4/4)
Repasemos la definición de
Cem Kaner…
“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.”
PhD. Federico Toledo
federico.toledo@abstracta.com.uy
Twitter: @fltoledo
¡Gracias!
http://www.slideshare.net/FedericoToledo
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
Introducción a las
Pruebas de Sistemas
de Información
http://blog.abstracta.com.uy/

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

  • 1.
    PhD. Federico Toledo federico.toledo@abstracta.com.uy Twitter:@fltoledo Hands-on de Testing Exploratorio
  • 2.
    Pirámide de Cohn ¿Cómodebería ser? Más info: http://abstracta.us/2015/10/26/best-testing-practices- for-agile-teams-the-automation-pyramid/
  • 3.
    ¿Cómo se suelehacer? • Antipatrón del Cono de Helado
  • 4.
    Testing “manual” • Clasificaciónde enfoques – Ad-hoc – Exploratorio – Planificado
  • 5.
    Ad-hoc • Sin unplan, 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.
  • 6.
    Exploratorio vs Planificado •Quiero visitar una ciudad nueva.
  • 7.
    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.
  • 8.
    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.
  • 9.
    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.
  • 10.
    Exploratorio • Estrategia detesting 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.
  • 11.
    Pruebas planificadas • Dosetapas 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.
  • 12.
    Técnicas del Enfoquede Pruebas Planificadas • Ejemplos – Valores límites – Particiones de equivalencia – Tablas de decisión – Árboles de decisión – Casos de uso – Máquinas de estado
  • 13.
    ¿Qué es TestingExploratorio? “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
  • 14.
    Testing Exploratorio basado enSesiones “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
  • 15.
    • 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
  • 16.
    Componentes de unaSesió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
  • 17.
    Hands-on • Ejecutar unasession – https://www.zetacuentas.com/ – Usuario: • ftoledo@abstracta.com.uy • testinguy
  • 18.
    Herramientas • Mind-maps – Xmind –www.mindmup.com • Timer • Notas con estructura de sesión – Papel – Blog de notas – Pizarra
  • 19.
  • 23.
    Métricas de unaSesió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.
  • 24.
    Métricas de unaSesión • Deberíamos analizar las métricas y definir los siguientes pasos. • La idea es que ciclo a ciclo se vaya mejorando el testing.
  • 25.
    Métricas de unaSesión Sesió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
  • 26.
    Métricas de unaSesión Sesió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
  • 27.
    Métricas de unaSesión Sesió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
  • 28.
    Conclusiones (1/4) • Facilitala planificación: – Time slots bien definidos. • Mejora al tester, su motivación y habilidades. • Facilita el análisis de cobertura. • Mejora continua.
  • 29.
    Conclusiones (2/4) • Demucha 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.
  • 30.
    • Técnicas delEnfoque 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)
  • 31.
    Casos de prueba Exploratorio 1hora 2 horas Conclusiones (4/4)
  • 32.
    Repasemos la definiciónde Cem Kaner… “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.”
  • 33.
    PhD. Federico Toledo federico.toledo@abstracta.com.uy Twitter:@fltoledo ¡Gracias! http://www.slideshare.net/FedericoToledo
  • 35.
    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
  • 36.
    Introducción a las Pruebasde Sistemas de Información http://blog.abstracta.com.uy/