1
Nuestras locaciones
NuestrosPanelistas
Lee Miguel LópezPerformance Engineer
Karla CerrónMarketing Analyst
QUESTIONS#PerformanceTestingBSF
• ¿Qué es?• ¿Por qué es importante?• ¿Cuándo se recomienda?• Alcance• Dentro del proyecto• ¿Qué necesito para iniciar?
Temario
QUESTIONS#PerformanceTestingBSF
• Prueba no funcional.• Aplicación + Ambiente(servidores, comunicación, etc).• Engloba diferentes tipos de prueba.• Imprescindible en ciclo de vida del sw.• Buen performance? => Percepción.• Perf. del Sistema = Σ Perf. Módulos
¿Qué es Performance Testing?
QUESTIONS#PerformanceTestingBSF¿Por qué hacer
Performance Testing?
QUESTIONS#PerformanceTestingBSF¿Por qué hacer
Performance Testing?
QUESTIONS#PerformanceTestingBSF
QUESTIONS#PerformanceTestingBSF
QUESTIONS#PerformanceTestingBSF
154
Interacción Simple (Conversación)
Memoria Corto Plazo
2
Comprometido emocionalmente.
Recordar Información
2sub
Trabajo intensivo
ms
Instantáneo
Hablando de segundos…
QUESTIONS#PerformanceTestingBSF
• NO EXISTEN estándares
Performance Testing Standards
APM(Application Performance Management)
• “Lo que quiero” & “Lo que necesito”• Pero existe…
QUESTIONS#PerformanceTestingBSF
QUESTIONS#PerformanceTestingBSF
• Usuarios concurrentes (dah!)• Tiempo de respuesta > Crítico.• Arquitecturas distribuidas.• Infraestructura o componentes compartidos.• Nuevas versiones o releases.• Antes de campañas de venta. (e-commerces)
¿Cuándo se recomienda?
QUESTIONS#PerformanceTestingBSF
• Replicar: HTTP, FTP, TCP, JDBC, MongoDB, JMS, WS, LDAP, OS, SSH, … … … ISO 8583
• Monitorear ambientes.• Exportar y correlacionar resultados.• Análisis y diagnóstico.
¿Qué puedo hacer?
“Tell me which protocol are you made of. And I will test you”
QUESTIONS#PerformanceTestingBSFDentro del proyecto
QUESTIONS#PerformanceTestingBSF
1. Asegurar código terminado y congelado.2. Diseñar ambiente de pruebas.
¿Qué se necesita?
QUESTIONS#PerformanceTestingBSFAmbiente: Expectativa
QUESTIONS#PerformanceTestingBSFAmbiente: Realidad
QUESTIONS#PerformanceTestingBSFPerformance Test Architecture
QUESTIONS#PerformanceTestingBSF
1. Asegurar código terminado y congelado.2. Diseñar ambiente de pruebas.
¿Qué se necesita?
3. Definir objetivos “realistas”.4. Crear scripts para emular transacciones.
QUESTIONS#PerformanceTestingBSF
• Think Time (simple, random, gaussian)• Delays (uniform, synchronized)• Conditional (simple, double, multip.)• Loop (switch, while, throughput )• Assertions (http code, text, time)• Managers (cache, cookies, sessions)• Regex
Scripting
QUESTIONS#PerformanceTestingBSFScripting
QUESTIONS#PerformanceTestingBSF
1. Asegurar código terminado y congelado.2. Diseñar ambiente de pruebas.3. Definir objetivos “realistas”.4. Crear scripts para emular transacciones.
¿Qué se necesita?
5. Data de prueba (RIP Performance Testing)6. Ejecución de pruebas.
QUESTIONS#PerformanceTestingBSFEjecución de Pruebas
QUESTIONS#PerformanceTestingBSFTipos de Pruebas
QUESTIONS#PerformanceTestingBSF
• Estoy bien o no?• Simula condiciones esperadas.• Casos importantes/críticos.• Rendimiento global.• SLA definidos por negocio.
De Carga
QUESTIONS#PerformanceTestingBSF
• Cuánto más puedo crecer?• Misma app, mismo env.• Expectativas futuras.• Nivel máximo aceptado.• SLA pueden cambiar.
De Escalabilidad
QUESTIONS#PerformanceTestingBSF
• Memoria OK?• Prueba de carga prolongada.• Memory starvation.• Garbage collector. • Puede durar horas, días,
incluso semanas.
De Rendimiento
QUESTIONS#PerformanceTestingBSF
• Dónde soy débil?• Condiciones inesperadas.• Carga extrema.• Scripts modificados.• Encontrar breakpoints.• Vital para algunos negocios
(BCP)
De Estrés
QUESTIONS#PerformanceTestingBSFOtros Tipos de Pruebas
PROFILING
BASELINE
DEBUG
PROFILING
QUESTIONS#PerformanceTestingBSF
1. Asegurar código terminado y congelado.2. Diseñar ambiente de pruebas.3. Definir objetivos “realistas”.4. Crear scripts para emular transacciones.5. Data de prueba (RIP Performance Testing)6. Ejecución de pruebas y monitoreo.
¿Qué se necesita?
7. Interpretación de resultados.
QUESTIONS#PerformanceTestingBSFAnalysis and Monitoring
QUEST SQL
QUESTIONS#PerformanceTestingBSF
1. Asegurar código terminado y congelado.2. Diseñar ambiente de pruebas.3. Definir objetivos “realistas”.4. Crear scripts para emular transacciones.5. Data de prueba (RIP Performance Testing)6. Ejecución de pruebas.7. Interpretación de resultados.
¿Qué se necesita?
8. Resumen/Entrega (Ejecutivo, Técnico)
Q & A
ContactoLee Miguel LópezPerformance [email protected] @mlopez_ch
¡Muchas Gracias!