COMPROBANDO Y REFUTANDO LAS
PROMESAS DE LAS PRUEBAS
AUTOMATIZADAS
Federico Toledo ([email protected])
R&D, Socio – Abstracta
¿Cuál es el problema?
• Problema de fe: nadie cree
• De cómo se vende: falsas expectativas
• …
14 y 15 de noviembre de 2013 Valencia, España 5
Outline
Reduzca sus
costos
Acumule el
esfuerzo
invertido en
testing
Mantenga
la motivación
de los testers
Mejore la cobertura
de sus pruebas
¿¿ REDUCE COSTOS DE
PRUEBAS ??
Promesa: el testing
automático reduce
costos.
14 y 15 de noviembre de 2013 Valencia, España 7
Reducción de costos
¿Cómo se pretende o promete reducir costos?
oGastando lo mismo y haciendo más
oHaciendo lo mismo y gastando menos
¿Qué es lo que debería suceder?
oIncrementar los costos pero hacer MUCHO más
14 y 15 de noviembre de 2013 Valencia, España 8
Más costos ¿en qué?
Herramienta
Capacitación
Infraestructura
Horas de automatización
Horas de mantenimiento
Planificación y Diseño (selección de pruebas)
25% del éxito
del proyecto
depende de
cómo hacer
esto
50% del éxito del
proyecto depende de esto.
14 y 15 de noviembre de 2013 Valencia, España 9
Ciencia o Ficción
Si bien Cam Kaner (kaner.com) dice que:
oAutomatizar una prueba lleva entre 3 y 10 veces más de
esfuerzo que ejecutarla en forma manual
Nos pasa que:
oEnfoque record&playback – NO conviene
oEnfoque data-driven testing – SÍ
Proyecto piloto + Dejarse llevar por las sensaciones
¿¿ LOGRO ACUMULAR EL
ESFUERZO ??
Promesa: el
testing
automático
me permite
acumular el
esfuerzo del
testing
14 y 15 de noviembre de 2013 Valencia, España 11
Acumulatividad nula
Mark Fewster and Dorothy Graham (1999). Software
test automation: effective use of test execution tools.
v1 v2 v3 v4 v5 v6
Desarrollo
del
producto
Esfuerzo
acumulado
14 y 15 de noviembre de 2013 Valencia, España 12
Además de acumular…
No perder lo acumulado
Probar endurance
o¿Qué pasa si el sistema es usado por 5 horas?
Pruebas de regresión y de “progresión”
oEjecutar nuevos casos, no solo los ya ejecutados
oData-driven, Model-based
14 y 15 de noviembre de 2013 Valencia, España 13
Data-driven testing
Probar todos los datos es infinito
Combinación de datos
ohttp://ctweb.abstracta.com.uy/
oDesarrollada en la UCLM
Macario Polo Usaola
Beatriz Pérez Lamancha
14 y 15 de noviembre de 2013 Valencia, España 14
Model-based testing
Demo by Kristian Karl & Peng Ge (Spotify) http://graphwalker.org/ (MBT tool)
http://www.yworks.com/en/products_yed_about.html (Modeling)
http://www.seleniumhq.org/ (Execution)
14 y 15 de noviembre de 2013 Valencia, España 15
Model-based testing
Tester Developer
14 y 15 de noviembre de 2013 Valencia, España 16
Model-based testing
¿¿ MOTIVA MÁS A LOS
TESTERS ??
Promesa: el
testing
automático es más
desafiante,
es menos
aburrido que
testear lo
mismo
siempre….
14 y 15 de noviembre de 2013 Valencia, España 18
Motivación
¿Un tester se motiva programando?
Un buen tester debe tener el corazón de un desarrollador
en un frasco sobre el escritorio.Harry Robinson
www.stickyminds.com/se/S8299.asp
14 y 15 de noviembre de 2013 Valencia, España 19
http://myOwnQArtoon.blogspot.com/
14 y 15 de noviembre de 2013 Valencia, España 20
Motivación del tester
¿¿ MEJORAMOS LA
COBERTURA ??
Promesa: el
testing
automático nos
permite
aumentar la
cobertura de las
pruebas….
14 y 15 de noviembre de 2013 Valencia, España 22
Cobertura
Medida de calidad
de cómo barro
Me indica cuándo
parar de barrer
Me sugiere qué
más barrer
Criterio: barrer
cada habitación,
incluso en las
esquinas
14 y 15 de noviembre de 2013 Valencia, España 23
Mejorar cobertura
El test automático nos ayuda a mejorar la cobertura.
Con test manual tenemos baja cobertura. ¿Eso es cierto?
o¿Cubrimos todas las líneas de código?
o¿Cubrimos todos los caminos, etc.?
oNO CREO.
¿Por qué la automatización me ayuda en este sentido?
¿Qué tan malo es no cubrir todas las líneas de código?
¿Qué tan bueno es cubrir todas las líneas de código?
14 y 15 de noviembre de 2013 Valencia, España 24
TACBA: Tablero de Análisis Costo-Beneficio de
Automatización
Modulo /
función
Riesgo /
prioridad
Estabilidad
UI
Complejidad
UI
Cobertura
deseada
CdP
abstracto
# CdP
concreto
Respuesta
esperada
Variables
de entrada
Afecta base
de datos
Login Alto 100% Bajo Clases de
equivalencia
y valores
límites
Login
Valido
200 Acceso al
sistema
2 no
Login
inválido
10 Negar
acceso
2 no
Registro Medio 50% Medio Todos los
pares… … … … …
Compra Alto 80% Alto Todas las
transiciones
de la
máquina de
estados
… … … … …
http://blog.abstracta.com.uy/
14 y 15 de noviembre de 2013 Valencia, España 25
TACBA rules
Afectan positivamente la decisión de automatizar:
oMayor Riesgo
oMayor estabilidad de la GUI
oMenor complejidad de la GUI
oMayor cantidad de casos de prueba concretos para el mismo
caso de prueba abstracto (se puede aplicar DDT con mayor
beneficio)
14 y 15 de noviembre de 2013 Valencia, España 26
TACBA rules
Cosas que hacen que sea más complejo automatizar
(agregan costo)
oGUI no estable, sabemos que va a cambiar
oGUI compleja (controles complejos de automatizar para la
herramienta usada)
oNo se puede aplicar DDT
oEs difícil determinar sistemáticamente la salida esperada
oCambia la base de datos luego de cada ejecución y esto
afecta la reejecución del caso de prueba
¡Resistir la tentación de automatizar todo!
CONCLUSIONES
14 y 15 de noviembre de 2013 Valencia, España 28
Las Promesas se logran con el compromiso
No sos vos,
soy yo
14 y 15 de noviembre de 2013 Valencia, España 30
No llega antes el más rápido
sino quien sabe a dónde va
¡¡ Gracias !!
¿¿ Preguntas ??
14 y 15 de noviembre de 2013 Valencia, España 31
Federico Toledo
R&D, Socio – Abstracta (Uruguay)
COMPROBANDO Y
REFUTANDO LAS PROMESAS
DE LAS PRUEBAS
AUTOMATIZADAS
Contacto
http://genexus.com/gxtest/
http://www.abstracta.com.uy/
http://blog.abstracta.com.uy
http://gxtest.abstracta.com.uy/wiki
@gxtest
http://www.youtube.com/user/AbstractaLabs
Organiza
Patrocinan
Colaboran
Top Related