TestingAR X - Si lo vamos a hacer, lo vamos a hacer bien - Por qué y para qué automatizamos?
-
Upload
testingar-meetup -
Category
Engineering
-
view
83 -
download
1
Transcript of TestingAR X - Si lo vamos a hacer, lo vamos a hacer bien - Por qué y para qué automatizamos?
www.velocitypartners.net
¿Por qué y para quéAutomatizamos?
Mitza Oyaneder
Section Title ExampleAgenda
Testing Manual vs Testing Automatizado• Las Pruebas/Test• El Proceso• ¿Cuándo usar Testing Manual o Automatizado?
Testing Automatizado• ¿Qué es el Testing Automatizado?• ¿Qué se necesita para hacer Testing Automatizado?• Usos • Ventajas• Errores Frecuentes• Recomendaciones
Testing Manual vsTesting Automatizado
Section Title ExampleLas Pruebas/Tests
Prueba Manual• El éxito depende de la
pericia de quien la ejecuta• Difícil de documentar• Difícil de mantener
actualizado• Más lento y tedioso• Suele ser visto más como
un proceso artesanal que uno de ingeniería
Prueba Automatizada• El resultado no depende
de quien la ejecute• Autodocumentada• Autoactualizable ante
cambios en la aplicación• Más rápido• Repetible• Reutilizable• Consistente
Section Title ExampleEl Proceso
Si bien los pasos son similares, el ciclo que se repite es mucho más corto.
Proceso Manual1) Diseñar casos de uso y
casos de prueba2) Prepara plantillas de
pasos y datos3) Ejecutar pasos4) Verificar resultados
Proceso Automatizado1) Diseñar casos de usos y
casos de prueba2) Grabar las acciones del
usuario3) Agregar verificaciones4) Ejecutar script
Section Title Example¿Cuándo usar Testing Manual o Automatizado?
¿Cuándo usar Testing Manual?• Software inestable• Casos de pruebas
únicos• Ciclo de vida corto del
producto• Inconsistencia del
ambiente de pruebas
¿Cuándo usar Testing Automatizado?• Tareas repetitivas• Múltiple conjunto de
datos para el mismo Test
• Frecuente generación de builds
• Múltiples ambientes
Testing Automatizado
Section Title Example¿Qué es el Testing Automatizado?
La automatización es utilizada para
complementar los procesos de testing
manual, a través de un conjunto de
programas.
Section Title Example¿Qué se necesita para hacer Testing Automatizado?
Que exista un proceso manual de test formalizadoCasos de Prueba Detallados: incluyendo resultado esperado originados por especificaciones funcionales y documentación de diseñoEntorno de Test Independiente: incluyendo una completa base de datos, de tal forma que los casos de prueba puedan ser repetidos cada vez que se realizan modificaciones en la aplicación
Section Title ExampleUsos
Generación de datos de pruebaEjecución de casos de pruebaPruebas de RegresiónPruebas de IntegraciónVerificación de ambientesMedición de tiempos de respuestaMonitoreo de aplicaciones
Section Title ExampleVentajas
Permite mejorar la cobertura de los testIncrementa la calidad del productoMejora los procedimientos de testingAyuda a que el testing se realice más frecuentemente
Section Title ExampleErrores Frecuentes
Intentar automatizar TODOCrear falsas expectativasUtilizar solo el método de Captura/Reproducción para la automatización del proceso de testingEsperar que los test de regresión encuentren muchos errores nuevosCreer que la automatización no interferirá en el proceso de testingIgnorar que automatizar un proceso de testing es costoso
Section Title ExampleRecomendaciones
Seleccionar un proyecto piloto, limitar el alcanceDefinir el ciclo de vida de Testing con la automatización en menteEvaluar varias herramientas de automatizaciónDefinir los casos de test cuidadosamenteNo descartar los test manuales
Section Title ExampleRecomendaciones
Ejecutar los test de automatización diariamenteMantener “vivo” al sistemaContinuar agregando casos de test al sistema progresivamenteLa automatización es un proceso de desarrollo de software: utilizar estándares de desarrollo y aplicar buenas prácticas
¿Preguntas?
¡Gracias!