SlideShare una empresa de Scribd logo
1 de 86
TESTING 
Automatización y Performance 
Herramientas para optimizar tiempos y 
garantizar calidad. 
PhD. Federico Toledo 
federico.toledo@abstracta.com.uy 
@fltoledo 
Ing. Matías Reina 
matias.reina@abstracta.com.uy 
@mellimatias
¿Comprarían?
¿Calidad?
¿Qué es el testing? 
Es un proceso empírico, se basa en la 
experimentación, en donde se le brinda 
información sobre la calidad de un 
producto o servicio a alguien que está 
interesado en el mismo.
¿Qué puede hacer el testing? 
• Proveer información con la que reducir 
riesgos. 
– Un tester siempre debe ser escéptico y 
ilusiones sobre el software. 
• Este proceso cognitivo proporcionará 
con la que se tomarán decisiones 
software.
El testing es caro
¿Cómo optimizar el testing? 
• Testing automático 
• Testing de performance 
• Testing basado en modelos
TESTING AUTOMÁTICO
Discusión de “salados” 
• “Test automation is simply an automatic way of 
doing what testers were doing before” 
– Steve Rowe (Tester at Microsoft) 
• “Test automation means extending the reach of 
testers” 
– James Batch (Tester Consultant at Satisfice)
Definición 
“La automatización del testing es testing 
asistido por computadoras (computer-assisted 
testing).” 
–Cem Kaner
Automatización 
• Adquirir tecnología para automatizar procesos 
manuales 
• Mejora: 
– calidad 
– performance en la producción 
– rendimiento de los recursos humanos 
• Uso de cualquier herramienta, que apoye a
¿Qué se puede automatizar? 
• La ejecución de las pruebas. 
• La gestión de los incidentes. 
• La gestión de los casos de prueba. 
• La generación de datos de prueba. 
• La combinación de datos de prueba. 
• …
Combinación de datos 
• Criterios: 
– Producto cartesiano 
– Each use o 1-wise 
– Pairwise 
– N-wise 
• Con los criterios de cobertura para valores 
intentamos conocer cuantitativamente el grado en 
que estamos utilizando los valores de prueba. 
• ctweb.abstracta.com.uy
Registro de Casos de Prueba 
• Típicamente en planillas de cálculo 
– Formato tabular 
– Registrando pasos, datos, resultados esperados 
• Herramientas de gestión
Registro de Incidentes 
• ¿Qué hago cuando encuentro un bug o una 
oportunidad de mejora? 
– ¿e-mail, teléfono, comunicación directa? 
• Difícil seguimiento 
• Cero trazabilidad 
– Herramientas de gestión y seguimiento de incidentes
Automatizar ejecución de pruebas 
Lograr que los casos de prueba sean ejecutados por 
una máquina
Beneficios 
• Aumentar la cobertura de pruebas y calidad del 
producto 
• Reducir tiempos de ejecución y salida al mercado 
• Ejecución en distintos ambientes 
• El trabajo queda documentado en los scripts de 
prueba
Beneficios 
• Los resultados quedan registrados y nos sirven 
para tomar decisiones 
• Detección temprana de errores 
• Reducir el costo total de la aplicación 
• Apoyo y motivación al equipo manual para pensar 
en pruebas alternativas
¿Cómo automatizar? 
• Se debe utilizar una herramienta 
• Algunos conceptos importantes 
– Record & Playback 
– Data-Driven Testing 
– Model-Based Testing
¿Beneficios solo a largo plazo? 
• Distintas dimensiones para aprovechar: 
Plataformas 
Tiempo 
Datos
¡Cuidado! 
• Automatizar el caos, solo traerá más caos más rápido. 
• Las herramientas NO piensan. 
– Lo bueno es que siempre ejecutan lo mismo. 
– Lo malo es que siempre ejecutan lo mismo. 
• Priorizar, seleccionar y diseñar las pruebas pensando 
en automatizarlas.
Definir objetivo de pruebas 
Ejemplos 
1. Testing consistente y repetible 
2. Correr casos de prueba desatendidos 
3. Encontrar errores de regresión 
8. Correr casos de prueba más seguido 
9. Incrementar la cobertura 
10.Probar en distintas plataformas 
11.Reducir el costo del testing
Definir objetivo de pruebas 
Ejemplos EQUIVOCADOS 
1. Sustituir el testing manual 
2. Automatizar el 100% de los casos 
La automatización NO reemplaza al Testing Manual 
– Agrega un tester virtual al equipo: 
• Trabaja de noche, 
• De forma desatendida, 
• No piensa, hace y verifica lo que se le haya 
pedido en el script
Desafío: Elegir la herramienta 
correcta
¿Qué pasa en Mobile? 
• Varias preguntas 
– ¿Hay herramientas? 
• Las hay y siguen los mismos conceptos 
• También tenemos que decidir si automatizar a nivel de UI, API 
o cómo 
– ¿Probamos en emuladores o en dispositivos?
¿Emuladores o dispositivos?
Entonces, ¿qué dispositivos elijo? 
• Entre 5 y 10 dispositivos. 
? ? ? ? 
? 
• Selección basada en riesgo.
Ok, ya sé qué dispositivos elijo 
¿Todos vamos a comprar un set?
Compartir: 
OpenDeviceLab.com
Open Device Lab - Uruguay 
@OpenDeviceLabUY 
• Donaciones de particulares: 
– 4 Android gama baja 
– 1 Android gama alta 
– 1 iPhone 
– 1 FirefoxOS 
– 1 Tablet Android 
• Convenios con proveedores: 
– Movistar - 23 dispositivos 
– Intel 
• Reservas y donaciones 
ODL@abstracta.com.uy
TESTING DE PERFORMANCE
Performance 
• Computer performance is 
characterized by the amount of useful 
work accomplished by a computer 
system compared to the time and 
resources used. 
• Requisito “no funcional” del sistema
Y si no hay performance, 
¿qué pasa?
El trabajo equivocado…
Las soluciones equivocadas 
• ¡¡Más fierro!!
¿Si no hay performance? 
Dependemos de los sistemas para trabajar 
• Se pierde productividad 
• Se pierden clientes 
• Se pierden oportunidades de venta 
Los sistemas son controlados por personas 
• Mayor costo de soporte 
La imagen de la empresa es el sistema que le da a sus usuarios 
• Costos indirectos 
• Pérdida de imagen y confianza
Acotaciones sobre Testing 
• Controlar las expectativas 
• Testing no es el responsable de la 
• Simplemente colabora en el objetivo 
debería tener todo el equipo 
• Con las pruebas de performance ocurre 
intentaremos colaborar a obtener un 
rendimiento, pero se logra sólo con la 
todos
Pruebas de performance 
Cómo ayudamos: 
– Simular situaciones de carga para conocer el desempeño del sistema 
Para qué: 
– Verificar si el sistema soporta la carga esperada 
– Verificar si se cumplen acuerdos de nivel de servicio (SLA) 
– Detectar errores u oportunidades de mejora, que solamente son observables 
ante la concurrencia 
– Detectar bottle-necks 
Objetivo: 
– Asegurar satisfacción de los usuarios
¿Cómo hacerlo?
Tipos de pruebas de performance 
• Pruebas de carga (load test) 
• Pruebas de estrés (stress test) 
• Pruebas de resistencia (endurance test) 
• Otras 
– Pruebas de escalabilidad 
– Pruebas de picos
Load test
Stress test
Endurance
Scalability
Software Load test 
¿Cómo simulamos el uso real del sistema? 
– Manualmente 
– Usando herramientas
Ventajas 
Manual Automático
Desventajas 
Manual Automático
Costo vs Beneficio 
• Costos 
– Infraestructura dedicada a pruebas 
– Horas-persona 
• Testers 
• Desarrolladores 
• Analistas 
• Expertos en infraestructuras 
– Herramientas
Objetivo 
• Apuntar siempre a mejorar la relación costo / 
beneficio 
• Si nos centramos sólo en mejorar la prueba, nos 
costará muy cara, y los beneficios serán menos 
redituables 
• Incluso pueden llegar tan tarde, ¡que no nos sirva 
para nada!
EJECUCIÓN 
IMPLEMENTACIÓN 
• LÍNEA BASE 
• EJECUCIÓN DE ESCENARIOS 
• REPORTE DE RESULTADOS 
• AUTOMATIZACIÓN 
• MONITORIZACIÓN 
DISEÑO 
•CASOS DE PRUEBA 
•ESCENARIOS DE CARGA 
•INFRAESTRUCTURA DE PRUEBAS 
•INDICADORES DE PERFORMANCE
Diseño de pruebas 
Definir objetivos del proyecto 
Diseñar casos de prueba 
Diseñar escenarios de carga 
Criterios de aceptación 
Determinar Infraestructura 
Datos de prueba
Must read 
• Scott Barber 
– “User experience, not metrics” 
– 13 capítulos dedicados a entender cómo simular la 
realidad lo más fielmente posible
Servidor Web 
Usuario Virtual 
Mooddeelllleerr 
Http - Request 
Http - Response 
1 
grabar 
Se abre 
1.1 
Se abre 
1.2 
Terminar de grabar3 
Acciones 
2 
3.1 
Tenemos el script 
Gateway 
(Proxy) 
Browser 
Http - Request 
Http - Response 
Http - Request 
Http - Response
Herramientas de 
Generación de carga 
• “La herramienta no hace al tester” 
“Enterprise grade load generation tools are designed to look easy in 
to look easy in sales demos. Don’t be fooled.” 
Scott Barber
Pasos para automatizar 
1. Preparar guion detallado 
2. Grabación inicial del script 
3. Validaciones / captura de errores 
4. Parametrización y correlación de variables 
5. Ajustar comportamiento de usuarios 
– Think times 
– Login section 
6. Probar los scripts
¿Qué monitorizar? 
• Hardware 
• Software de base 
• Herramientas para el test 
– Generación de carga 
– La misma monitorización 
• ¡Toda la infraestructura!
Herramientas 
• Las herramientas a usar depende de: 
– El sistema operativo 
– La base de datos 
– El servidor de aplicaciones 
– Etc. 
• Hay que conocer un poco de todo, y muchas veces 
aprender en el momento
Ejecución – Plan de Pruebas 
• BaseLine 
– Mejor tiempo posible 
– Iterativo para tener datos estadísticos 
• Escenario 
– Incremental 
– Comenzar con un 20% de la carga 
– Escalar hasta llegar al 100% 
Servidor Web 
Servidor Web
¿Qué buscamos? 
• El objetivo de la ejecución en 
gran parte es buscar los 
bottlenecks para mejorar el 
mejorar el sistema 
• Se pueden encontrar en 
distintos niveles
¿Qué pasa en Mobile? 
• Server side 
– Más de lo mismo 
– También son invocaciones http 
– Las capturamos con Fiddler (proxy http) 
– Las reproducimos con cualquier herramienta de pruebas 
http 
• Client side 
– Más complejo, hay opciones pero menos 
– Nosotros creamos nuestra propia herramienta
www.monkop.com
Rápido y sin esfuerzo 
1. monkop.com 
2. Subir APP 
3. Ver reporte
La magia 
• Performance 
• Seguridad 
• Robustez 
• Buenas prácticas
Oportunidades de mejora detectadas
Oportunidades de mejora detectadas
Oportunidades de mejora detectadas
TESTING BASADO EN 
MODELOS
MBT – Model based testing 
• Usar modelos para test 
• Similar a nuestro proceso mental 
• ¿Por qué modelos? 
– Mayor grado de abstracción 
• Mayor productividad 
• Mayor legilibilidad 
• No hay necesidad de manejar código
Framework Xtest 
Xtest 
GXtest ASPXtest BTtest …
¿Por qué Xtest? 
• Alto nivel – más fácil de aprender 
• Generación inicial de pruebas (OneClickStartup) 
• Cross–platform (browsers, dispositivos) 
• Adaptable (absorbe cambios) 
• Reportes automáticos (doc, web)
¿Por qué Xtest? 
• Record and playback 
• Data driven testing 
• Gestión centralizada, ejecución distribuida 
• Pruebas de performance 
• Comparador de ejecuciones
Componentes de Xtest 
Manager 
Repositorio de pruebas 
Acceso Web 
Agenda de ejecuciones 
Tester 
Diseñador de 
pruebas 
Ejecución 
Distribuida
Framework Xtest 
Xtest 
GXtest ASPXtest BTtest …
¿Qué es ? 
• Herramienta de testing específica para aplicaciones 
Web GeneXus 
Model-Based Testing 
Record & 
Playback 
Data-Driven 
Testing
¿Cómo se logra? 
GXtest asocia Artefactos de Prueba a la KB 
Casos de Prueba 
Capa de Adaptación 
Casos de Prueba Ejecutables
Ejemplo 
• Transacción 
Clientes 
• Herramientas 
tradicionales: 
• GXtest:
Casos de Prueba 
Datapools 
Comandos
Casos de Prueba 
Decisiones
Manager
Introducción a las 
Pruebas de Sistemas 
de Información 
http://blog.abstracta.com.uy/

Más contenido relacionado

La actualidad más candente

TestingAR V - Una Nueva Visión - Federico Toledo - Performance Durante y Des...
TestingAR V - Una Nueva Visión - Federico Toledo - Performance Durante y Des...TestingAR V - Una Nueva Visión - Federico Toledo - Performance Durante y Des...
TestingAR V - Una Nueva Visión - Federico Toledo - Performance Durante y Des...TestingAR Meetup
 
TestingAR VII - Siete Magníficos - Pablo Soifer - El abc del test automation
TestingAR VII - Siete Magníficos - Pablo Soifer - El abc del test automationTestingAR VII - Siete Magníficos - Pablo Soifer - El abc del test automation
TestingAR VII - Siete Magníficos - Pablo Soifer - El abc del test automationTestingAR Meetup
 
TestingAR V - Una Nueva Visión - Nicolas Arkhipenko - Estrategias y Controve...
TestingAR V - Una Nueva Visión - Nicolas Arkhipenko - Estrategias y Controve...TestingAR V - Una Nueva Visión - Nicolas Arkhipenko - Estrategias y Controve...
TestingAR V - Una Nueva Visión - Nicolas Arkhipenko - Estrategias y Controve...TestingAR Meetup
 
Cómo iniciarme en el mundo de la automatización de pruebas
Cómo iniciarme en el mundo de la automatización de pruebasCómo iniciarme en el mundo de la automatización de pruebas
Cómo iniciarme en el mundo de la automatización de pruebasAbel Quintana Lopez
 
Mejores prácticas para testing de aplicaciones
Mejores prácticas para testing de aplicacionesMejores prácticas para testing de aplicaciones
Mejores prácticas para testing de aplicacionesSoftware Guru
 
Introducción a la automatización de pruebas con tecnologías .Net
Introducción a la automatización de pruebas con tecnologías .NetIntroducción a la automatización de pruebas con tecnologías .Net
Introducción a la automatización de pruebas con tecnologías .NetAbel Quintana Lopez
 
Conceptos de desarrollo ágil
Conceptos de desarrollo ágilConceptos de desarrollo ágil
Conceptos de desarrollo ágilGuino Henostroza
 
E2E testing frameworks:lo bueno, lo malo y lo feo
E2E testing frameworks:lo bueno, lo malo y lo feoE2E testing frameworks:lo bueno, lo malo y lo feo
E2E testing frameworks:lo bueno, lo malo y lo feoAbel Quintana Lopez
 
Testing como parte de la cultura DevOps
Testing como parte de la cultura DevOpsTesting como parte de la cultura DevOps
Testing como parte de la cultura DevOpsAbel Quintana Lopez
 
SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?
SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?
SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?Belatrix Software
 
Ejecutando pruebas automatizadas desde la nube
Ejecutando pruebas automatizadas desde la nubeEjecutando pruebas automatizadas desde la nube
Ejecutando pruebas automatizadas desde la nubeAbel Quintana Lopez
 
Testing automatizado de aplicaciones web
Testing automatizado de aplicaciones webTesting automatizado de aplicaciones web
Testing automatizado de aplicaciones webAnibal Guzmán Miranda
 
Verificacion --validacion
Verificacion --validacionVerificacion --validacion
Verificacion --validacioneduardoao2
 
Guilherme siqueira simoes sg virtual conference 2014
Guilherme siqueira simoes    sg virtual conference 2014Guilherme siqueira simoes    sg virtual conference 2014
Guilherme siqueira simoes sg virtual conference 2014Software Guru
 
Pruebas de aplicaciones web
Pruebas de aplicaciones webPruebas de aplicaciones web
Pruebas de aplicaciones webpaulinaaillon
 
PRUEBA DE APLICACIONES WEB
PRUEBA DE APLICACIONES WEB PRUEBA DE APLICACIONES WEB
PRUEBA DE APLICACIONES WEB YULIANA JIMENEZ
 
¿Cómo convertirse en un Tester de verdad?
¿Cómo convertirse en un Tester de verdad?¿Cómo convertirse en un Tester de verdad?
¿Cómo convertirse en un Tester de verdad?Software Guru
 

La actualidad más candente (20)

Practicas técnicas
Practicas técnicasPracticas técnicas
Practicas técnicas
 
Automatizacion de Pruebas
Automatizacion de PruebasAutomatizacion de Pruebas
Automatizacion de Pruebas
 
TestingAR V - Una Nueva Visión - Federico Toledo - Performance Durante y Des...
TestingAR V - Una Nueva Visión - Federico Toledo - Performance Durante y Des...TestingAR V - Una Nueva Visión - Federico Toledo - Performance Durante y Des...
TestingAR V - Una Nueva Visión - Federico Toledo - Performance Durante y Des...
 
TestingAR VII - Siete Magníficos - Pablo Soifer - El abc del test automation
TestingAR VII - Siete Magníficos - Pablo Soifer - El abc del test automationTestingAR VII - Siete Magníficos - Pablo Soifer - El abc del test automation
TestingAR VII - Siete Magníficos - Pablo Soifer - El abc del test automation
 
TestingAR V - Una Nueva Visión - Nicolas Arkhipenko - Estrategias y Controve...
TestingAR V - Una Nueva Visión - Nicolas Arkhipenko - Estrategias y Controve...TestingAR V - Una Nueva Visión - Nicolas Arkhipenko - Estrategias y Controve...
TestingAR V - Una Nueva Visión - Nicolas Arkhipenko - Estrategias y Controve...
 
Cómo iniciarme en el mundo de la automatización de pruebas
Cómo iniciarme en el mundo de la automatización de pruebasCómo iniciarme en el mundo de la automatización de pruebas
Cómo iniciarme en el mundo de la automatización de pruebas
 
Mejores prácticas para testing de aplicaciones
Mejores prácticas para testing de aplicacionesMejores prácticas para testing de aplicaciones
Mejores prácticas para testing de aplicaciones
 
Introducción a la automatización de pruebas con tecnologías .Net
Introducción a la automatización de pruebas con tecnologías .NetIntroducción a la automatización de pruebas con tecnologías .Net
Introducción a la automatización de pruebas con tecnologías .Net
 
Conceptos de desarrollo ágil
Conceptos de desarrollo ágilConceptos de desarrollo ágil
Conceptos de desarrollo ágil
 
E2E testing frameworks:lo bueno, lo malo y lo feo
E2E testing frameworks:lo bueno, lo malo y lo feoE2E testing frameworks:lo bueno, lo malo y lo feo
E2E testing frameworks:lo bueno, lo malo y lo feo
 
Testing como parte de la cultura DevOps
Testing como parte de la cultura DevOpsTesting como parte de la cultura DevOps
Testing como parte de la cultura DevOps
 
SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?
SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?
SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?
 
Ejecutando pruebas automatizadas desde la nube
Ejecutando pruebas automatizadas desde la nubeEjecutando pruebas automatizadas desde la nube
Ejecutando pruebas automatizadas desde la nube
 
Testing automatizado de aplicaciones web
Testing automatizado de aplicaciones webTesting automatizado de aplicaciones web
Testing automatizado de aplicaciones web
 
Verificacion --validacion
Verificacion --validacionVerificacion --validacion
Verificacion --validacion
 
Guilherme siqueira simoes sg virtual conference 2014
Guilherme siqueira simoes    sg virtual conference 2014Guilherme siqueira simoes    sg virtual conference 2014
Guilherme siqueira simoes sg virtual conference 2014
 
Pruebas de aplicaciones web
Pruebas de aplicaciones webPruebas de aplicaciones web
Pruebas de aplicaciones web
 
Validación y Verificación de Software
Validación y Verificación de SoftwareValidación y Verificación de Software
Validación y Verificación de Software
 
PRUEBA DE APLICACIONES WEB
PRUEBA DE APLICACIONES WEB PRUEBA DE APLICACIONES WEB
PRUEBA DE APLICACIONES WEB
 
¿Cómo convertirse en un Tester de verdad?
¿Cómo convertirse en un Tester de verdad?¿Cómo convertirse en un Tester de verdad?
¿Cómo convertirse en un Tester de verdad?
 

Destacado

¿Y para qué la mejora de procesos?
¿Y para qué la mejora de procesos?¿Y para qué la mejora de procesos?
¿Y para qué la mejora de procesos?Software Guru
 
Optimizar performance sin morir en el intento
Optimizar performance sin morir en el intentoOptimizar performance sin morir en el intento
Optimizar performance sin morir en el intentoDiego Cardozo
 
SLSAE - Social Media Strategy - Wrap-up 06-15-10
SLSAE - Social Media Strategy - Wrap-up 06-15-10SLSAE - Social Media Strategy - Wrap-up 06-15-10
SLSAE - Social Media Strategy - Wrap-up 06-15-10Q&A Business Solutions
 
Curso de Desarrollo de indicadores de calidad de la practica docente 2da Parte
Curso de Desarrollo de indicadores de calidad de la practica docente 2da ParteCurso de Desarrollo de indicadores de calidad de la practica docente 2da Parte
Curso de Desarrollo de indicadores de calidad de la practica docente 2da ParteEscalae
 
Depurar el videojuego de
Depurar el videojuego deDepurar el videojuego de
Depurar el videojuego dejoselupo
 
Más allá del testing
Más allá del testingMás allá del testing
Más allá del testingSergio Gil
 
GamwUS. Desarrollo Diriguido por Pruebas y Videojuegos
GamwUS. Desarrollo Diriguido por Pruebas y VideojuegosGamwUS. Desarrollo Diriguido por Pruebas y Videojuegos
GamwUS. Desarrollo Diriguido por Pruebas y VideojuegosJavier_J
 
Seminario en CDA 2015 - "Mobile exploratory testing"
Seminario en CDA 2015 - "Mobile exploratory testing" Seminario en CDA 2015 - "Mobile exploratory testing"
Seminario en CDA 2015 - "Mobile exploratory testing" Federico Toledo
 
Automatizacion
AutomatizacionAutomatizacion
Automatizacionalejross
 
Un paseo por los secretos de la localización de videojuegos
Un paseo por los secretos de la localización de videojuegosUn paseo por los secretos de la localización de videojuegos
Un paseo por los secretos de la localización de videojuegosPablo Muñoz Sánchez
 
Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa . Timo Summa...
Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa. Timo Summa...Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa. Timo Summa...
Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa . Timo Summa...Tieturi Oy
 
Community manager alcance de la función v1.0
Community manager alcance de la función v1.0Community manager alcance de la función v1.0
Community manager alcance de la función v1.0TestingBaires
 
Social Media para políticos
Social Media para políticosSocial Media para políticos
Social Media para políticosTestingBaires
 
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...Tieturi Oy
 
Control de calidad de productos de software en ORT - 2010
Control de calidad de productos de software en ORT - 2010Control de calidad de productos de software en ORT - 2010
Control de calidad de productos de software en ORT - 2010Ernesto Kiszkurno
 

Destacado (20)

¿Y para qué la mejora de procesos?
¿Y para qué la mejora de procesos?¿Y para qué la mejora de procesos?
¿Y para qué la mejora de procesos?
 
Optimizar performance sin morir en el intento
Optimizar performance sin morir en el intentoOptimizar performance sin morir en el intento
Optimizar performance sin morir en el intento
 
SLSAE - Social Media Strategy - Wrap-up 06-15-10
SLSAE - Social Media Strategy - Wrap-up 06-15-10SLSAE - Social Media Strategy - Wrap-up 06-15-10
SLSAE - Social Media Strategy - Wrap-up 06-15-10
 
Curso de Desarrollo de indicadores de calidad de la practica docente 2da Parte
Curso de Desarrollo de indicadores de calidad de la practica docente 2da ParteCurso de Desarrollo de indicadores de calidad de la practica docente 2da Parte
Curso de Desarrollo de indicadores de calidad de la practica docente 2da Parte
 
Depurar el videojuego de
Depurar el videojuego deDepurar el videojuego de
Depurar el videojuego de
 
Más allá del testing
Más allá del testingMás allá del testing
Más allá del testing
 
GamwUS. Desarrollo Diriguido por Pruebas y Videojuegos
GamwUS. Desarrollo Diriguido por Pruebas y VideojuegosGamwUS. Desarrollo Diriguido por Pruebas y Videojuegos
GamwUS. Desarrollo Diriguido por Pruebas y Videojuegos
 
Testing 1234
Testing 1234Testing 1234
Testing 1234
 
Seminario en CDA 2015 - "Mobile exploratory testing"
Seminario en CDA 2015 - "Mobile exploratory testing" Seminario en CDA 2015 - "Mobile exploratory testing"
Seminario en CDA 2015 - "Mobile exploratory testing"
 
Automatizacion
AutomatizacionAutomatizacion
Automatizacion
 
Testing = Especificación + Programación
Testing = Especificación + ProgramaciónTesting = Especificación + Programación
Testing = Especificación + Programación
 
Taller de Testeo de videojuegos
Taller de Testeo de videojuegos Taller de Testeo de videojuegos
Taller de Testeo de videojuegos
 
Un paseo por los secretos de la localización de videojuegos
Un paseo por los secretos de la localización de videojuegosUn paseo por los secretos de la localización de videojuegos
Un paseo por los secretos de la localización de videojuegos
 
Software engineeringparte2 (1)
Software engineeringparte2 (1)Software engineeringparte2 (1)
Software engineeringparte2 (1)
 
Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa . Timo Summa...
Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa. Timo Summa...Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa. Timo Summa...
Aamiaisseminaari 3.6.: Johdetut projektit julkisessa hallinnossa . Timo Summa...
 
Software engineeringparte2 (1)
Software engineeringparte2 (1)Software engineeringparte2 (1)
Software engineeringparte2 (1)
 
Community manager alcance de la función v1.0
Community manager alcance de la función v1.0Community manager alcance de la función v1.0
Community manager alcance de la función v1.0
 
Social Media para políticos
Social Media para políticosSocial Media para políticos
Social Media para políticos
 
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...
Tieturin aamiaisseminaari: Paluu tulevaisuuteen - Onlineallekirjoitus, Antti ...
 
Control de calidad de productos de software en ORT - 2010
Control de calidad de productos de software en ORT - 2010Control de calidad de productos de software en ORT - 2010
Control de calidad de productos de software en ORT - 2010
 

Similar a Automatización y optimización del testing

Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
 Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe... Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...Federico Toledo
 
Pruebas de software
Pruebas de softwarePruebas de software
Pruebas de softwareGomez Gomez
 
Liquid Day - Capitalizando la automatizacion sin programar
Liquid Day - Capitalizando la automatizacion sin programarLiquid Day - Capitalizando la automatizacion sin programar
Liquid Day - Capitalizando la automatizacion sin programarSoftware Guru
 
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al final
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al finalMeetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al final
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al finalTestingUy
 
Aseguramiento De Calidad Mp
Aseguramiento De Calidad MpAseguramiento De Calidad Mp
Aseguramiento De Calidad MpZonar
 
Organización y Arquitectura del Computador: Rendimiento
Organización y Arquitectura del Computador: RendimientoOrganización y Arquitectura del Computador: Rendimiento
Organización y Arquitectura del Computador: RendimientoLuis Fernando Aguas Bucheli
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas.. ..
 
Pruebas-OCW.pdf
Pruebas-OCW.pdfPruebas-OCW.pdf
Pruebas-OCW.pdflgarcias
 
metodologias de sistemas
metodologias de sistemasmetodologias de sistemas
metodologias de sistemasROCASASO
 
Clase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.pptClase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.pptrogergrefa1
 
118 test de aceptación
118 test de aceptación118 test de aceptación
118 test de aceptaciónGeneXus
 
Importancia del testing en los proyectos
Importancia del testing en los proyectosImportancia del testing en los proyectos
Importancia del testing en los proyectosSoftware Guru
 

Similar a Automatización y optimización del testing (20)

Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
 Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe... Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
 
Pruebas de software
Pruebas de softwarePruebas de software
Pruebas de software
 
S9-DAW-2022S1.pptx
S9-DAW-2022S1.pptxS9-DAW-2022S1.pptx
S9-DAW-2022S1.pptx
 
S8-CDSQA.pptx
S8-CDSQA.pptxS8-CDSQA.pptx
S8-CDSQA.pptx
 
Exposición software.pptx
Exposición software.pptxExposición software.pptx
Exposición software.pptx
 
Exposición software.pptx
Exposición software.pptxExposición software.pptx
Exposición software.pptx
 
Liquid Day - Capitalizando la automatizacion sin programar
Liquid Day - Capitalizando la automatizacion sin programarLiquid Day - Capitalizando la automatizacion sin programar
Liquid Day - Capitalizando la automatizacion sin programar
 
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al final
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al finalMeetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al final
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al final
 
Aseguramiento De Calidad Mp
Aseguramiento De Calidad MpAseguramiento De Calidad Mp
Aseguramiento De Calidad Mp
 
Organización y Arquitectura del Computador: Rendimiento
Organización y Arquitectura del Computador: RendimientoOrganización y Arquitectura del Computador: Rendimiento
Organización y Arquitectura del Computador: Rendimiento
 
Curso calidad software
Curso calidad softwareCurso calidad software
Curso calidad software
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
 
S6-CDSQA.pptx
S6-CDSQA.pptxS6-CDSQA.pptx
S6-CDSQA.pptx
 
Pruebas-OCW.pdf
Pruebas-OCW.pdfPruebas-OCW.pdf
Pruebas-OCW.pdf
 
Practico
PracticoPractico
Practico
 
metodologias de sistemas
metodologias de sistemasmetodologias de sistemas
metodologias de sistemas
 
El camino de Tester Agil.pdf
El camino de Tester Agil.pdfEl camino de Tester Agil.pdf
El camino de Tester Agil.pdf
 
Clase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.pptClase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.ppt
 
118 test de aceptación
118 test de aceptación118 test de aceptación
118 test de aceptación
 
Importancia del testing en los proyectos
Importancia del testing en los proyectosImportancia del testing en los proyectos
Importancia del testing en los proyectos
 

Más de Abstracta

Lecciones aprendidas desarrollando una plataforma de Mobile Monkey Testing
Lecciones aprendidas desarrollando una plataforma de Mobile Monkey TestingLecciones aprendidas desarrollando una plataforma de Mobile Monkey Testing
Lecciones aprendidas desarrollando una plataforma de Mobile Monkey TestingAbstracta
 
Build and test all, lo nuevo de GXtest para Desarrolladores
Build and test all, lo nuevo de GXtest para DesarrolladoresBuild and test all, lo nuevo de GXtest para Desarrolladores
Build and test all, lo nuevo de GXtest para DesarrolladoresAbstracta
 
¿Por qué automatizar? y ¿por qué con GXtest?
¿Por qué automatizar? y ¿por qué con GXtest?¿Por qué automatizar? y ¿por qué con GXtest?
¿Por qué automatizar? y ¿por qué con GXtest?Abstracta
 
Herramientas de testing para aplicaciones GeneXus
Herramientas de testing para aplicaciones GeneXusHerramientas de testing para aplicaciones GeneXus
Herramientas de testing para aplicaciones GeneXusAbstracta
 
Mobile testing, ¿cómo enfrentar los nuevos desafíos?
Mobile testing, ¿cómo enfrentar los nuevos desafíos?Mobile testing, ¿cómo enfrentar los nuevos desafíos?
Mobile testing, ¿cómo enfrentar los nuevos desafíos?Abstracta
 
Mantenimiento y mejora continua de la performance de las aplicaciones
Mantenimiento y mejora continua de la performance de las aplicacionesMantenimiento y mejora continua de la performance de las aplicaciones
Mantenimiento y mejora continua de la performance de las aplicacionesAbstracta
 
Los superpoderes de la interfaz. Cómo el diseño convierte al usuario en Super...
Los superpoderes de la interfaz. Cómo el diseño convierte al usuario en Super...Los superpoderes de la interfaz. Cómo el diseño convierte al usuario en Super...
Los superpoderes de la interfaz. Cómo el diseño convierte al usuario en Super...Abstracta
 
VLCtesting 2013 - Comprobando y refutando las promesas del testing automatiza...
VLCtesting 2013 - Comprobando y refutando las promesas del testing automatiza...VLCtesting 2013 - Comprobando y refutando las promesas del testing automatiza...
VLCtesting 2013 - Comprobando y refutando las promesas del testing automatiza...Abstracta
 
GX23 - ¿Por qué correr cuando puedes testear?
GX23 - ¿Por qué correr cuando puedes testear?GX23 - ¿Por qué correr cuando puedes testear?
GX23 - ¿Por qué correr cuando puedes testear?Abstracta
 
GX23 - GXtest 2.0: Automatización de pruebas para la nueva generación de apl...
GX23 - 	GXtest 2.0: Automatización de pruebas para la nueva generación de apl...GX23 - 	GXtest 2.0: Automatización de pruebas para la nueva generación de apl...
GX23 - GXtest 2.0: Automatización de pruebas para la nueva generación de apl...Abstracta
 
Generación de pruebas de performance a partir de pruebas funcionales para sis...
Generación de pruebas de performance a partir de pruebas funcionales para sis...Generación de pruebas de performance a partir de pruebas funcionales para sis...
Generación de pruebas de performance a partir de pruebas funcionales para sis...Abstracta
 
GX Project Days - Charla de testing
GX Project Days - Charla de testingGX Project Days - Charla de testing
GX Project Days - Charla de testingAbstracta
 
Automatización GXtest - experiencias de uso
Automatización GXtest - experiencias de usoAutomatización GXtest - experiencias de uso
Automatización GXtest - experiencias de usoAbstracta
 
GXtest 2.0 - New features and tools
GXtest 2.0 - New features and toolsGXtest 2.0 - New features and tools
GXtest 2.0 - New features and toolsAbstracta
 

Más de Abstracta (14)

Lecciones aprendidas desarrollando una plataforma de Mobile Monkey Testing
Lecciones aprendidas desarrollando una plataforma de Mobile Monkey TestingLecciones aprendidas desarrollando una plataforma de Mobile Monkey Testing
Lecciones aprendidas desarrollando una plataforma de Mobile Monkey Testing
 
Build and test all, lo nuevo de GXtest para Desarrolladores
Build and test all, lo nuevo de GXtest para DesarrolladoresBuild and test all, lo nuevo de GXtest para Desarrolladores
Build and test all, lo nuevo de GXtest para Desarrolladores
 
¿Por qué automatizar? y ¿por qué con GXtest?
¿Por qué automatizar? y ¿por qué con GXtest?¿Por qué automatizar? y ¿por qué con GXtest?
¿Por qué automatizar? y ¿por qué con GXtest?
 
Herramientas de testing para aplicaciones GeneXus
Herramientas de testing para aplicaciones GeneXusHerramientas de testing para aplicaciones GeneXus
Herramientas de testing para aplicaciones GeneXus
 
Mobile testing, ¿cómo enfrentar los nuevos desafíos?
Mobile testing, ¿cómo enfrentar los nuevos desafíos?Mobile testing, ¿cómo enfrentar los nuevos desafíos?
Mobile testing, ¿cómo enfrentar los nuevos desafíos?
 
Mantenimiento y mejora continua de la performance de las aplicaciones
Mantenimiento y mejora continua de la performance de las aplicacionesMantenimiento y mejora continua de la performance de las aplicaciones
Mantenimiento y mejora continua de la performance de las aplicaciones
 
Los superpoderes de la interfaz. Cómo el diseño convierte al usuario en Super...
Los superpoderes de la interfaz. Cómo el diseño convierte al usuario en Super...Los superpoderes de la interfaz. Cómo el diseño convierte al usuario en Super...
Los superpoderes de la interfaz. Cómo el diseño convierte al usuario en Super...
 
VLCtesting 2013 - Comprobando y refutando las promesas del testing automatiza...
VLCtesting 2013 - Comprobando y refutando las promesas del testing automatiza...VLCtesting 2013 - Comprobando y refutando las promesas del testing automatiza...
VLCtesting 2013 - Comprobando y refutando las promesas del testing automatiza...
 
GX23 - ¿Por qué correr cuando puedes testear?
GX23 - ¿Por qué correr cuando puedes testear?GX23 - ¿Por qué correr cuando puedes testear?
GX23 - ¿Por qué correr cuando puedes testear?
 
GX23 - GXtest 2.0: Automatización de pruebas para la nueva generación de apl...
GX23 - 	GXtest 2.0: Automatización de pruebas para la nueva generación de apl...GX23 - 	GXtest 2.0: Automatización de pruebas para la nueva generación de apl...
GX23 - GXtest 2.0: Automatización de pruebas para la nueva generación de apl...
 
Generación de pruebas de performance a partir de pruebas funcionales para sis...
Generación de pruebas de performance a partir de pruebas funcionales para sis...Generación de pruebas de performance a partir de pruebas funcionales para sis...
Generación de pruebas de performance a partir de pruebas funcionales para sis...
 
GX Project Days - Charla de testing
GX Project Days - Charla de testingGX Project Days - Charla de testing
GX Project Days - Charla de testing
 
Automatización GXtest - experiencias de uso
Automatización GXtest - experiencias de usoAutomatización GXtest - experiencias de uso
Automatización GXtest - experiencias de uso
 
GXtest 2.0 - New features and tools
GXtest 2.0 - New features and toolsGXtest 2.0 - New features and tools
GXtest 2.0 - New features and tools
 

Último

Unidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionUnidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionarmando_cardenas
 
Introducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTERIntroducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTEREMMAFLORESCARMONA
 
Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Opentix
 
Manual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfManual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfmasogeis
 
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...ITeC Instituto Tecnología Construcción
 
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3AlexysCaytanoMelndez1
 
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOPARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOSelenaCoronadoHuaman
 

Último (7)

Unidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionUnidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacion
 
Introducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTERIntroducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTER
 
Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200
 
Manual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfManual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdf
 
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
 
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
 
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOPARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
 

Automatización y optimización del testing

  • 1. TESTING Automatización y Performance Herramientas para optimizar tiempos y garantizar calidad. PhD. Federico Toledo federico.toledo@abstracta.com.uy @fltoledo Ing. Matías Reina matias.reina@abstracta.com.uy @mellimatias
  • 4. ¿Qué es el testing? Es un proceso empírico, se basa en la experimentación, en donde se le brinda información sobre la calidad de un producto o servicio a alguien que está interesado en el mismo.
  • 5. ¿Qué puede hacer el testing? • Proveer información con la que reducir riesgos. – Un tester siempre debe ser escéptico y ilusiones sobre el software. • Este proceso cognitivo proporcionará con la que se tomarán decisiones software.
  • 7. ¿Cómo optimizar el testing? • Testing automático • Testing de performance • Testing basado en modelos
  • 9. Discusión de “salados” • “Test automation is simply an automatic way of doing what testers were doing before” – Steve Rowe (Tester at Microsoft) • “Test automation means extending the reach of testers” – James Batch (Tester Consultant at Satisfice)
  • 10. Definición “La automatización del testing es testing asistido por computadoras (computer-assisted testing).” –Cem Kaner
  • 11. Automatización • Adquirir tecnología para automatizar procesos manuales • Mejora: – calidad – performance en la producción – rendimiento de los recursos humanos • Uso de cualquier herramienta, que apoye a
  • 12. ¿Qué se puede automatizar? • La ejecución de las pruebas. • La gestión de los incidentes. • La gestión de los casos de prueba. • La generación de datos de prueba. • La combinación de datos de prueba. • …
  • 13. Combinación de datos • Criterios: – Producto cartesiano – Each use o 1-wise – Pairwise – N-wise • Con los criterios de cobertura para valores intentamos conocer cuantitativamente el grado en que estamos utilizando los valores de prueba. • ctweb.abstracta.com.uy
  • 14. Registro de Casos de Prueba • Típicamente en planillas de cálculo – Formato tabular – Registrando pasos, datos, resultados esperados • Herramientas de gestión
  • 15. Registro de Incidentes • ¿Qué hago cuando encuentro un bug o una oportunidad de mejora? – ¿e-mail, teléfono, comunicación directa? • Difícil seguimiento • Cero trazabilidad – Herramientas de gestión y seguimiento de incidentes
  • 16. Automatizar ejecución de pruebas Lograr que los casos de prueba sean ejecutados por una máquina
  • 17. Beneficios • Aumentar la cobertura de pruebas y calidad del producto • Reducir tiempos de ejecución y salida al mercado • Ejecución en distintos ambientes • El trabajo queda documentado en los scripts de prueba
  • 18. Beneficios • Los resultados quedan registrados y nos sirven para tomar decisiones • Detección temprana de errores • Reducir el costo total de la aplicación • Apoyo y motivación al equipo manual para pensar en pruebas alternativas
  • 19. ¿Cómo automatizar? • Se debe utilizar una herramienta • Algunos conceptos importantes – Record & Playback – Data-Driven Testing – Model-Based Testing
  • 20. ¿Beneficios solo a largo plazo? • Distintas dimensiones para aprovechar: Plataformas Tiempo Datos
  • 21. ¡Cuidado! • Automatizar el caos, solo traerá más caos más rápido. • Las herramientas NO piensan. – Lo bueno es que siempre ejecutan lo mismo. – Lo malo es que siempre ejecutan lo mismo. • Priorizar, seleccionar y diseñar las pruebas pensando en automatizarlas.
  • 22. Definir objetivo de pruebas Ejemplos 1. Testing consistente y repetible 2. Correr casos de prueba desatendidos 3. Encontrar errores de regresión 8. Correr casos de prueba más seguido 9. Incrementar la cobertura 10.Probar en distintas plataformas 11.Reducir el costo del testing
  • 23. Definir objetivo de pruebas Ejemplos EQUIVOCADOS 1. Sustituir el testing manual 2. Automatizar el 100% de los casos La automatización NO reemplaza al Testing Manual – Agrega un tester virtual al equipo: • Trabaja de noche, • De forma desatendida, • No piensa, hace y verifica lo que se le haya pedido en el script
  • 24. Desafío: Elegir la herramienta correcta
  • 25. ¿Qué pasa en Mobile? • Varias preguntas – ¿Hay herramientas? • Las hay y siguen los mismos conceptos • También tenemos que decidir si automatizar a nivel de UI, API o cómo – ¿Probamos en emuladores o en dispositivos?
  • 27. Entonces, ¿qué dispositivos elijo? • Entre 5 y 10 dispositivos. ? ? ? ? ? • Selección basada en riesgo.
  • 28. Ok, ya sé qué dispositivos elijo ¿Todos vamos a comprar un set?
  • 29.
  • 31. Open Device Lab - Uruguay @OpenDeviceLabUY • Donaciones de particulares: – 4 Android gama baja – 1 Android gama alta – 1 iPhone – 1 FirefoxOS – 1 Tablet Android • Convenios con proveedores: – Movistar - 23 dispositivos – Intel • Reservas y donaciones ODL@abstracta.com.uy
  • 33. Performance • Computer performance is characterized by the amount of useful work accomplished by a computer system compared to the time and resources used. • Requisito “no funcional” del sistema
  • 34. Y si no hay performance, ¿qué pasa?
  • 36. Las soluciones equivocadas • ¡¡Más fierro!!
  • 37. ¿Si no hay performance? Dependemos de los sistemas para trabajar • Se pierde productividad • Se pierden clientes • Se pierden oportunidades de venta Los sistemas son controlados por personas • Mayor costo de soporte La imagen de la empresa es el sistema que le da a sus usuarios • Costos indirectos • Pérdida de imagen y confianza
  • 38. Acotaciones sobre Testing • Controlar las expectativas • Testing no es el responsable de la • Simplemente colabora en el objetivo debería tener todo el equipo • Con las pruebas de performance ocurre intentaremos colaborar a obtener un rendimiento, pero se logra sólo con la todos
  • 39. Pruebas de performance Cómo ayudamos: – Simular situaciones de carga para conocer el desempeño del sistema Para qué: – Verificar si el sistema soporta la carga esperada – Verificar si se cumplen acuerdos de nivel de servicio (SLA) – Detectar errores u oportunidades de mejora, que solamente son observables ante la concurrencia – Detectar bottle-necks Objetivo: – Asegurar satisfacción de los usuarios
  • 41. Tipos de pruebas de performance • Pruebas de carga (load test) • Pruebas de estrés (stress test) • Pruebas de resistencia (endurance test) • Otras – Pruebas de escalabilidad – Pruebas de picos
  • 46. Software Load test ¿Cómo simulamos el uso real del sistema? – Manualmente – Usando herramientas
  • 47.
  • 48.
  • 49.
  • 52. Costo vs Beneficio • Costos – Infraestructura dedicada a pruebas – Horas-persona • Testers • Desarrolladores • Analistas • Expertos en infraestructuras – Herramientas
  • 53. Objetivo • Apuntar siempre a mejorar la relación costo / beneficio • Si nos centramos sólo en mejorar la prueba, nos costará muy cara, y los beneficios serán menos redituables • Incluso pueden llegar tan tarde, ¡que no nos sirva para nada!
  • 54. EJECUCIÓN IMPLEMENTACIÓN • LÍNEA BASE • EJECUCIÓN DE ESCENARIOS • REPORTE DE RESULTADOS • AUTOMATIZACIÓN • MONITORIZACIÓN DISEÑO •CASOS DE PRUEBA •ESCENARIOS DE CARGA •INFRAESTRUCTURA DE PRUEBAS •INDICADORES DE PERFORMANCE
  • 55. Diseño de pruebas Definir objetivos del proyecto Diseñar casos de prueba Diseñar escenarios de carga Criterios de aceptación Determinar Infraestructura Datos de prueba
  • 56. Must read • Scott Barber – “User experience, not metrics” – 13 capítulos dedicados a entender cómo simular la realidad lo más fielmente posible
  • 57. Servidor Web Usuario Virtual Mooddeelllleerr Http - Request Http - Response 1 grabar Se abre 1.1 Se abre 1.2 Terminar de grabar3 Acciones 2 3.1 Tenemos el script Gateway (Proxy) Browser Http - Request Http - Response Http - Request Http - Response
  • 58. Herramientas de Generación de carga • “La herramienta no hace al tester” “Enterprise grade load generation tools are designed to look easy in to look easy in sales demos. Don’t be fooled.” Scott Barber
  • 59. Pasos para automatizar 1. Preparar guion detallado 2. Grabación inicial del script 3. Validaciones / captura de errores 4. Parametrización y correlación de variables 5. Ajustar comportamiento de usuarios – Think times – Login section 6. Probar los scripts
  • 60. ¿Qué monitorizar? • Hardware • Software de base • Herramientas para el test – Generación de carga – La misma monitorización • ¡Toda la infraestructura!
  • 61. Herramientas • Las herramientas a usar depende de: – El sistema operativo – La base de datos – El servidor de aplicaciones – Etc. • Hay que conocer un poco de todo, y muchas veces aprender en el momento
  • 62. Ejecución – Plan de Pruebas • BaseLine – Mejor tiempo posible – Iterativo para tener datos estadísticos • Escenario – Incremental – Comenzar con un 20% de la carga – Escalar hasta llegar al 100% Servidor Web Servidor Web
  • 63. ¿Qué buscamos? • El objetivo de la ejecución en gran parte es buscar los bottlenecks para mejorar el mejorar el sistema • Se pueden encontrar en distintos niveles
  • 64. ¿Qué pasa en Mobile? • Server side – Más de lo mismo – También son invocaciones http – Las capturamos con Fiddler (proxy http) – Las reproducimos con cualquier herramienta de pruebas http • Client side – Más complejo, hay opciones pero menos – Nosotros creamos nuestra propia herramienta
  • 66. Rápido y sin esfuerzo 1. monkop.com 2. Subir APP 3. Ver reporte
  • 67. La magia • Performance • Seguridad • Robustez • Buenas prácticas
  • 71. TESTING BASADO EN MODELOS
  • 72. MBT – Model based testing • Usar modelos para test • Similar a nuestro proceso mental • ¿Por qué modelos? – Mayor grado de abstracción • Mayor productividad • Mayor legilibilidad • No hay necesidad de manejar código
  • 73. Framework Xtest Xtest GXtest ASPXtest BTtest …
  • 74. ¿Por qué Xtest? • Alto nivel – más fácil de aprender • Generación inicial de pruebas (OneClickStartup) • Cross–platform (browsers, dispositivos) • Adaptable (absorbe cambios) • Reportes automáticos (doc, web)
  • 75. ¿Por qué Xtest? • Record and playback • Data driven testing • Gestión centralizada, ejecución distribuida • Pruebas de performance • Comparador de ejecuciones
  • 76. Componentes de Xtest Manager Repositorio de pruebas Acceso Web Agenda de ejecuciones Tester Diseñador de pruebas Ejecución Distribuida
  • 77. Framework Xtest Xtest GXtest ASPXtest BTtest …
  • 78. ¿Qué es ? • Herramienta de testing específica para aplicaciones Web GeneXus Model-Based Testing Record & Playback Data-Driven Testing
  • 79. ¿Cómo se logra? GXtest asocia Artefactos de Prueba a la KB Casos de Prueba Capa de Adaptación Casos de Prueba Ejecutables
  • 80. Ejemplo • Transacción Clientes • Herramientas tradicionales: • GXtest:
  • 81. Casos de Prueba Datapools Comandos
  • 82. Casos de Prueba Decisiones
  • 84.
  • 85.
  • 86. Introducción a las Pruebas de Sistemas de Información http://blog.abstracta.com.uy/