SlideShare una empresa de Scribd logo
Agenda
• Introducción y background
– Functional Testing Automation
– Performance Testing Automation
– Motivación
• Propuesta
• Trabajo Relacionado
• Conclusiones y trabajo futuro
Funcional Testing Automation
• Record and Playback
• User interface level automation
• Selenium
Intro a Selenium
Tester / User
SUT: System Under Test
Manual Test Case
Execution
Intro a Selenium
Functional
Test Scripts
Selenium captura las
Interactiones del usuario
Tester / User
Ejecución y reporte
SUT: System Under Test
Manual Test Case
Execution
This is record and playback!
Performance Testing Automation
• Record and playback, pero a nivel de
Protocolo
• Load generator ( )
– Simulación de múltiples Virtual
Users concurrentes desde pocas
máquinas de prueba
– No pueden ser simulados con
navegadores reales
– Entonces, la herramienta ejecuta
procesos que simulan el tráfico
HTTP
¿Cómo capturar el tráfico?
Performance
Test Scripts
captura el
trafico HTTP
Tester / User
Ejecución y reportes
SUT: System Under Test
HTTP traffic
Web Server
Manual Test Case
Execution
Performance Test Script
Dependiendo del
sistema,
1 linea en Selenium
es equivalente a 200
lineas in OpenSTA
Performance Testing Methodology
• Vázquez, G., Reina, M., Toledo, F., de Uvarow, S., Greisin, E., López, H.:
Metodología de Pruebas de Performance. Presented at the JCC (2008).
Test Design Automation
Execute
AnalyzeFixEntre el 30% y 50% en
tareas de automatización
Motivación
• Performance testing es muy caro
• No hay flexibilidad
– Si la aplicación cambia, es necesario reconstruir
los scripts
Objetivos para performance testing automation
• Reducir costos
• Mejorar la flexibilidad
Proposal Overview
Functional
Test Scripts
System Under
Test
HTTP traffic
Sniffer HTTP
Automatic Test Case
Execution
HTTP session
System Under
Test Interface
Proposal Overview
Functional
Test Scripts
Http session
Http session
model
Generate
Performance Test
Scripts
Generate
Artefactos del Proceso
Meta-model
Relacionado con el Protocolo
Relacionado con el script de prueba funcional
Test code generation
Generación Automatica
• Se insertan Timers
• Se agregan las mismas Validaciones as que hay en
el Script Selenium
• Se Modulariza como en el Script Selenium
• Se Parametrizan los datos tal como estaba en el
Selenium Script (data-driven testing)
• Cualquiera de estas tareas lleva menor esfuerzo a
nivel de UI que a nivel de protocolo
Empirical Validation: Industrial Use
Proyecto SUT # Scripts # VU
Human Resources
System
Base de datos AS400, Java Web
sobre Websphere
14 317
Production
Management
System
Base de datos AS400, C# Web
sobre Microsoft Internet
Information Services
5 55
Courts
Management
System
Java Web sobre Tomcat con base
de datos Oracle
5 144
Auction System Java Web sobre Tomcat con base
de datos MySQL
1 2000
Logistics System Java Web sobre Weblogic con
base de datos Oracle
9 117
Resultados
• El esfuerzo requerido sin nuestro framework
se reduce más de 5 veces
– Enfoque Tradicional : 6 a 10 horas por script
– Nuestro enfoque: 1 a 5 horas por script
• Flexibilidad
– Mantenimiento en enfoque tradicional:
reconstruir los script casi completamente
– Nuestro enfoque: ajustar scripts Selenium,
regenerar
Related Work
• Generation of performance tests (Web Services)
– García Domínguez et al.: Performance Test Case Generation for
Java and WSDL-based Web Services from MARTE. Advances in
Internet Technology. 2012.
• Generation of performance tests (Web Systems)
– Use Selenium scripts for performance testing
• TestMaker (www.pushtotest.com)
• Scaleborn (www.scaleborn.com)
• Generation of performance tests (Web Systems)
– De Sousa: Reusing Functional Testing in order to Decrease
Performance and Stress Testing Costs. SEKE 2011.
• Generate statically the Selenium scripts to JMeter scripts. They do not
consider the http traffic
– Secondary requests, 302, …
– Java scripts
Conclusions
• Objetivos buscados para performance testing
– Mejorar flexibilidad
– Reducir costos
• Trabajo Futuro
– Generar para distintos Load Generators
• JMeter (jmeter.apache.org)
• Considerando diferentes protocolos o tecnologías
Acknowledgement:
(ftoledo@abstracta.com.uy)
(mreina@abstracta.com.uy)
(fbaptista@abstracta.com.uy)
(macario.polo@uclm.es)
(beatriz.plamancha@uclm.es)
Generación de Pruebas de
Rendimiento a Partir de Pruebas
Funcionales para Sistemas Web
MSc. Federico Toledo
Eng. Matías Reina
Eng. Fabián Baptista
PhD. Macario Polo Usaola
PhD. Beatriz Pérez Lamancha
Gracias
¿Preguntas?

Más contenido relacionado

Similar a Generación de pruebas de performance a partir de pruebas funcionales para sistemas web

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
 
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Abstracta
 
Puro Jmeter, Pura Vida! - Base de Datos y Webservices desde Jmeter
Puro Jmeter, Pura Vida! - Base de Datos y Webservices desde JmeterPuro Jmeter, Pura Vida! - Base de Datos y Webservices desde Jmeter
Puro Jmeter, Pura Vida! - Base de Datos y Webservices desde Jmeter
TestingCR
 
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
Abel Quintana Lopez
 
Web Day Devops - Plain Concepts
Web Day Devops - Plain ConceptsWeb Day Devops - Plain Concepts
Web Day Devops - Plain Concepts
Manuel Rodrigo Cabello Malagón
 
Probando aplicaciones AngularJS
Probando aplicaciones AngularJSProbando aplicaciones AngularJS
Probando aplicaciones AngularJS
Rodrigo Pimentel
 
Pruebas de rendimiento con Visual Studio 2010
Pruebas de rendimiento con Visual Studio 2010Pruebas de rendimiento con Visual Studio 2010
Pruebas de rendimiento con Visual Studio 2010
Globe Testing
 
Pruebas automaticas
Pruebas automaticasPruebas automaticas
Pruebas automaticas
Joan Sebastián Ramírez Pérez
 
Web Service buscador de localizaciones de IP’s
Web Service buscador de localizaciones de IP’sWeb Service buscador de localizaciones de IP’s
Web Service buscador de localizaciones de IP’s
Pablo Pellegrinet
 
Automatizacion de Pruebas
Automatizacion de PruebasAutomatizacion de Pruebas
Automatizacion de Pruebas
Guino Henostroza
 
S4 D2 Pruebas unitariaasgjm,ghjkhjkos.pptx
S4 D2 Pruebas unitariaasgjm,ghjkhjkos.pptxS4 D2 Pruebas unitariaasgjm,ghjkhjkos.pptx
S4 D2 Pruebas unitariaasgjm,ghjkhjkos.pptx
IvanhoeGarcia
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
Rodolfo Finochietti
 
Primer meetup - Paas al rescate de las Pruebas de Performance - Horacio López
Primer meetup - Paas al rescate de las Pruebas de Performance - Horacio LópezPrimer meetup - Paas al rescate de las Pruebas de Performance - Horacio López
Primer meetup - Paas al rescate de las Pruebas de Performance - Horacio López
TestingAR Meetup
 
Conociendo Nuestro Fua interno
Conociendo Nuestro Fua internoConociendo Nuestro Fua interno
Conociendo Nuestro Fua interno
Jose Patricio Bovet Derpich
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
.. ..
 
Pylot : Herramienta para pruebas de rendimiento de Aplicaciones Web
Pylot : Herramienta para pruebas  de rendimiento de Aplicaciones WebPylot : Herramienta para pruebas  de rendimiento de Aplicaciones Web
Pylot : Herramienta para pruebas de rendimiento de Aplicaciones Web
Deisy Sapaico
 
ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3
Rodolfo Finochietti
 
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
TestingUy
 
Introduccion a elastic beanstalk aws roadshow bogota mexico
Introduccion a elastic beanstalk   aws roadshow bogota mexicoIntroduccion a elastic beanstalk   aws roadshow bogota mexico
Introduccion a elastic beanstalk aws roadshow bogota mexicoAmazon Web Services LATAM
 
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
Federico Toledo
 

Similar a Generación de pruebas de performance a partir de pruebas funcionales para sistemas web (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...
 
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
 
Puro Jmeter, Pura Vida! - Base de Datos y Webservices desde Jmeter
Puro Jmeter, Pura Vida! - Base de Datos y Webservices desde JmeterPuro Jmeter, Pura Vida! - Base de Datos y Webservices desde Jmeter
Puro Jmeter, Pura Vida! - Base de Datos y Webservices desde Jmeter
 
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
 
Web Day Devops - Plain Concepts
Web Day Devops - Plain ConceptsWeb Day Devops - Plain Concepts
Web Day Devops - Plain Concepts
 
Probando aplicaciones AngularJS
Probando aplicaciones AngularJSProbando aplicaciones AngularJS
Probando aplicaciones AngularJS
 
Pruebas de rendimiento con Visual Studio 2010
Pruebas de rendimiento con Visual Studio 2010Pruebas de rendimiento con Visual Studio 2010
Pruebas de rendimiento con Visual Studio 2010
 
Pruebas automaticas
Pruebas automaticasPruebas automaticas
Pruebas automaticas
 
Web Service buscador de localizaciones de IP’s
Web Service buscador de localizaciones de IP’sWeb Service buscador de localizaciones de IP’s
Web Service buscador de localizaciones de IP’s
 
Automatizacion de Pruebas
Automatizacion de PruebasAutomatizacion de Pruebas
Automatizacion de Pruebas
 
S4 D2 Pruebas unitariaasgjm,ghjkhjkos.pptx
S4 D2 Pruebas unitariaasgjm,ghjkhjkos.pptxS4 D2 Pruebas unitariaasgjm,ghjkhjkos.pptx
S4 D2 Pruebas unitariaasgjm,ghjkhjkos.pptx
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
Primer meetup - Paas al rescate de las Pruebas de Performance - Horacio López
Primer meetup - Paas al rescate de las Pruebas de Performance - Horacio LópezPrimer meetup - Paas al rescate de las Pruebas de Performance - Horacio López
Primer meetup - Paas al rescate de las Pruebas de Performance - Horacio López
 
Conociendo Nuestro Fua interno
Conociendo Nuestro Fua internoConociendo Nuestro Fua interno
Conociendo Nuestro Fua interno
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
 
Pylot : Herramienta para pruebas de rendimiento de Aplicaciones Web
Pylot : Herramienta para pruebas  de rendimiento de Aplicaciones WebPylot : Herramienta para pruebas  de rendimiento de Aplicaciones Web
Pylot : Herramienta para pruebas de rendimiento de Aplicaciones Web
 
ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3
 
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
 
Introduccion a elastic beanstalk aws roadshow bogota mexico
Introduccion a elastic beanstalk   aws roadshow bogota mexicoIntroduccion a elastic beanstalk   aws roadshow bogota mexico
Introduccion a elastic beanstalk aws roadshow bogota mexico
 
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
 

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 Testing
Abstracta
 
Abstracta-CDA - TESTING: Automatización y Performance - Herramientas para opt...
Abstracta-CDA - TESTING: Automatización y Performance - Herramientas para opt...Abstracta-CDA - TESTING: Automatización y Performance - Herramientas para opt...
Abstracta-CDA - TESTING: Automatización y Performance - Herramientas para opt...Abstracta
 
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
Abstracta
 
¿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 GeneXus
Abstracta
 
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 aplicaciones
Abstracta
 
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
 
GX Project Days - Charla de testing
GX Project Days - Charla de testingGX Project Days - Charla de testing
GX Project Days - Charla de testing
Abstracta
 
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
 
Abstracta-CDA - TESTING: Automatización y Performance - Herramientas para opt...
Abstracta-CDA - TESTING: Automatización y Performance - Herramientas para opt...Abstracta-CDA - TESTING: Automatización y Performance - Herramientas para opt...
Abstracta-CDA - TESTING: Automatización y Performance - Herramientas para opt...
 
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...
 
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

TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGATAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
arriagaanggie50
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
IsabelQuintero36
 
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
CrystalRomero18
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
marianabz2403
 
Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
SamuelRamirez83524
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
julio05042006
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
maralache30
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1
yuki22434
 
Ventajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloroVentajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloro
durangense277
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
CesarPazosQuispe
 
Presentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The CleanPresentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The Clean
juanchogame18
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
paulroyal74
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
Emilio Casbas
 
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaCatalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
AMADO SALVADOR
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
PABLOCESARGARZONBENI
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
Trabajo tecnología sobre Conceptos Básicos De Programación
Trabajo tecnología sobre Conceptos Básicos De ProgramaciónTrabajo tecnología sobre Conceptos Básicos De Programación
Trabajo tecnología sobre Conceptos Básicos De Programación
SofiaCollazos
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
coloradxmaria
 

Último (20)

TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGATAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
 
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1
 
Ventajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloroVentajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloro
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
 
Presentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The CleanPresentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The Clean
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
 
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaCatalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
Trabajo tecnología sobre Conceptos Básicos De Programación
Trabajo tecnología sobre Conceptos Básicos De ProgramaciónTrabajo tecnología sobre Conceptos Básicos De Programación
Trabajo tecnología sobre Conceptos Básicos De Programación
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
 

Generación de pruebas de performance a partir de pruebas funcionales para sistemas web

  • 1.
  • 2.
  • 3. Agenda • Introducción y background – Functional Testing Automation – Performance Testing Automation – Motivación • Propuesta • Trabajo Relacionado • Conclusiones y trabajo futuro
  • 4. Funcional Testing Automation • Record and Playback • User interface level automation • Selenium
  • 5. Intro a Selenium Tester / User SUT: System Under Test Manual Test Case Execution
  • 6. Intro a Selenium Functional Test Scripts Selenium captura las Interactiones del usuario Tester / User Ejecución y reporte SUT: System Under Test Manual Test Case Execution This is record and playback!
  • 7. Performance Testing Automation • Record and playback, pero a nivel de Protocolo • Load generator ( ) – Simulación de múltiples Virtual Users concurrentes desde pocas máquinas de prueba – No pueden ser simulados con navegadores reales – Entonces, la herramienta ejecuta procesos que simulan el tráfico HTTP
  • 8. ¿Cómo capturar el tráfico? Performance Test Scripts captura el trafico HTTP Tester / User Ejecución y reportes SUT: System Under Test HTTP traffic Web Server Manual Test Case Execution
  • 9. Performance Test Script Dependiendo del sistema, 1 linea en Selenium es equivalente a 200 lineas in OpenSTA
  • 10. Performance Testing Methodology • Vázquez, G., Reina, M., Toledo, F., de Uvarow, S., Greisin, E., López, H.: Metodología de Pruebas de Performance. Presented at the JCC (2008). Test Design Automation Execute AnalyzeFixEntre el 30% y 50% en tareas de automatización
  • 11. Motivación • Performance testing es muy caro • No hay flexibilidad – Si la aplicación cambia, es necesario reconstruir los scripts Objetivos para performance testing automation • Reducir costos • Mejorar la flexibilidad
  • 12. Proposal Overview Functional Test Scripts System Under Test HTTP traffic Sniffer HTTP Automatic Test Case Execution HTTP session System Under Test Interface
  • 13. Proposal Overview Functional Test Scripts Http session Http session model Generate Performance Test Scripts Generate
  • 15. Meta-model Relacionado con el Protocolo Relacionado con el script de prueba funcional
  • 17. Generación Automatica • Se insertan Timers • Se agregan las mismas Validaciones as que hay en el Script Selenium • Se Modulariza como en el Script Selenium • Se Parametrizan los datos tal como estaba en el Selenium Script (data-driven testing) • Cualquiera de estas tareas lleva menor esfuerzo a nivel de UI que a nivel de protocolo
  • 18. Empirical Validation: Industrial Use Proyecto SUT # Scripts # VU Human Resources System Base de datos AS400, Java Web sobre Websphere 14 317 Production Management System Base de datos AS400, C# Web sobre Microsoft Internet Information Services 5 55 Courts Management System Java Web sobre Tomcat con base de datos Oracle 5 144 Auction System Java Web sobre Tomcat con base de datos MySQL 1 2000 Logistics System Java Web sobre Weblogic con base de datos Oracle 9 117
  • 19. Resultados • El esfuerzo requerido sin nuestro framework se reduce más de 5 veces – Enfoque Tradicional : 6 a 10 horas por script – Nuestro enfoque: 1 a 5 horas por script • Flexibilidad – Mantenimiento en enfoque tradicional: reconstruir los script casi completamente – Nuestro enfoque: ajustar scripts Selenium, regenerar
  • 20. Related Work • Generation of performance tests (Web Services) – García Domínguez et al.: Performance Test Case Generation for Java and WSDL-based Web Services from MARTE. Advances in Internet Technology. 2012. • Generation of performance tests (Web Systems) – Use Selenium scripts for performance testing • TestMaker (www.pushtotest.com) • Scaleborn (www.scaleborn.com) • Generation of performance tests (Web Systems) – De Sousa: Reusing Functional Testing in order to Decrease Performance and Stress Testing Costs. SEKE 2011. • Generate statically the Selenium scripts to JMeter scripts. They do not consider the http traffic – Secondary requests, 302, … – Java scripts
  • 21. Conclusions • Objetivos buscados para performance testing – Mejorar flexibilidad – Reducir costos • Trabajo Futuro – Generar para distintos Load Generators • JMeter (jmeter.apache.org) • Considerando diferentes protocolos o tecnologías
  • 22. Acknowledgement: (ftoledo@abstracta.com.uy) (mreina@abstracta.com.uy) (fbaptista@abstracta.com.uy) (macario.polo@uclm.es) (beatriz.plamancha@uclm.es) Generación de Pruebas de Rendimiento a Partir de Pruebas Funcionales para Sistemas Web MSc. Federico Toledo Eng. Matías Reina Eng. Fabián Baptista PhD. Macario Polo Usaola PhD. Beatriz Pérez Lamancha Gracias ¿Preguntas?