the cloud - a game-changer for web and mobile performance testing

20
Madrid, 4 th -7 th of June 2012 The Cloud: A Game- Changer for Web and Mobile Performance Testing Fred Beringer VP Business Development Europe, SOASTA José Antonio Rodríguez Technical Director, Testhouse Spain

Upload: jose-antonio-rodriguez

Post on 09-Dec-2014

344 views

Category:

Technology


2 download

DESCRIPTION

Como afrontar el desafío de hacer pruebas de rendimiento en la nube.Hoy en día el acceso a nuestras aplicaciones llegan desde múltiples localizaciones (continentes) y desde múltiples navegadores (Chrome, Firefox, IE), sistemas operativos (Windows, Mac, Linux) dispositivos (iPhone, iPad, Android). En esta presentación se muestran las bases herramientas y metodología para afrontar este reto.

TRANSCRIPT

Page 1: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Madrid, 4th-7th of June 2012

The Cloud: A Game-Changer for Web and

Mobile Performance Testing Fred Beringer

VP Business Development Europe, SOASTA

José Antonio Rodríguez

Technical Director, Testhouse Spain

Page 2: The Cloud - A Game-Changer for Web and Mobile Performance Testing

SOASTA Introduced Cloud Testing (2006) First internal & external Test Platform Over 350 customers worldwide Performance experts in the US, Europe, India Dec 2011: $12M funding round for expansion Award winning & Patented technology

Wall Street Journal Top 50 hottest companies

Red Herring Top 100 Global companies Gartner Magic Quadrant Visionary Leader Multiple technology patents

Page 3: The Cloud - A Game-Changer for Web and Mobile Performance Testing

• Difficult to test at production level • Difficult to test from multiple geographies• Difficult to discover the full range of

performance issues

• No real-time end-to-end view of performance• Offline analysis

Web and mobile performance testing Challenges

• Tests can’t start at any volume within the hour• Test cycles takes days

• Cost of acquisition and maintenance of hardware is prohibitive

Scale

Analytics

Speed

Cost

Page 4: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Innovative Test Builder

Fastest time-to-test AJAX, Flash, Mobile, Web,

services Build Agility: Unique test

recording capabilities Intuitive UI + Powerful

JavaScript Editing

Cross-Cloud Provisioning Manager

Public Cloud ie. EC2, Azure, GoGrid, Rackspace, etc.

Private Cloud: vCloud, cloud.com, etc. Bare metal Hybrid (combination) Automates the deployment process for

performance testing

Real-time performance analysis

Performance-focused Business Intelligence Aggregates end-to-end data and correlate

for in-test issue resolution performance metrics from any monitoring sources

Delivers multi-dimensional views and drill down capabilities for testers

Analytic data from CloudTest’s monitor or existing production monitor

Affordable ScaleSpeed

Real-time resolutionIntegrated

Page 5: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Real time resolutionReal-time analysis of performance results allows you to identify issues as they occur and take action. Testing in production is a reality.

Page 6: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Leverage your test environment across the world and understand the impact of geographical and distributed load on your application GEO SCALE

Page 7: The Cloud - A Game-Changer for Web and Mobile Performance Testing

CloudTest helps you discover the whole range of issuesYou might encounter with today’s application

CDN file placement Load Balancer configuration Network bandwidth Network configuration DNS routing

Inadequate server resources Default configuration settings Unbalanced web servers Auto-scaling failure High latency between systems

Slow third party plug-ins Memory leaks Mismanaged garbage collection Un-optimized database schema Inefficient database queries Slow pages Conflict with other applications

Full range of problems

Page 8: The Cloud - A Game-Changer for Web and Mobile Performance Testing

s

Memory leaks

Scale of Test

Sta

ge

/ Te

am

Dev & Test

Extending Performance Beyond the LabDiscovering Issues across teams, time and scale

Release& Deploy

Network& Ops

CDN file placement

Load Balancer configuration

Network bandwidth

Network configuration

DNS routing

Inadequate server resources

Default configuration settings

Unbalanced web serversAuto-scaling failures

Latency between systems

Slow third-party plug-ins

Garbage collection

Database thread counts

Inefficient database queriesSlow pages

Conflict with other apps

Test Lab Staging Production

Search technology limits

Method-level tuning

Max sockets exceeded

Firewall max capacity

Global latency variance

Security bottlenecks

Memory leaks

Page 9: The Cloud - A Game-Changer for Web and Mobile Performance Testing

They are struggling

Leading French eCommerce Hot product. Scarcity. Very low price = recipe for #fail

1000 happy customers. 99 000 angry ones.

• DNS Servers down 10 minutes before and 20 minutes after 7am.

• Firewall down.• Varnishes down.• Ad Server on it knee slowing down

the whole site.

Peak: 39k/sec – 800k hits/secs

Page 10: The Cloud - A Game-Changer for Web and Mobile Performance Testing

• 800 Amazon EC2 large instances used to generate load (3200 cloud computing cores) – Spawned in 30 minutes!

• Real Scenario: Searching/watching/rating music videos, adding videos to favorites, and viewing artist’s channel pages, etc.

• Transfer rate of 16 gigabits per second• 6 terabytes of data transferred per hour• Over 77k hits per second, not including live traffic

Objective: Add 1 million users to the live traffic to stress the new video features.

Page 11: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Results: Understood the changes to be made to support the extra traffic.

• Worked with Akamai to scale some of their local data centers and optimized the distribution of assets.

• Made on-the-fly change to their infrastructure to fit the extra traffic.

Page 12: The Cloud - A Game-Changer for Web and Mobile Performance Testing

18+ million eFilers each tax year $6M test lab Traditional load testing tool Largest previous test was 4,000 virtual

users Several performance issues in past years Wanted to test at 200% of peak traffic

SOASTA began testing in production in days 400 test cycles in 33 days Reached 300,000 concurrent users Provisioned 2,200 server cores Helped fix 27 showstopper performance issues Saved hundred of thousand dollars

How SOASTA helped Intuit reach full confidence

Page 13: The Cloud - A Game-Changer for Web and Mobile Performance Testing

SOASTA & TestHouse Offerings

Page 14: The Cloud - A Game-Changer for Web and Mobile Performance Testing

CloudTest Lite Performance and Functional Testing HTTP, HTML5, AJAX, REST, SOAP,

FLEX, FLASH, etc. Web and Mobile Testing Jenkins integration Download it FREE today!

http://www.soasta.com

Page 15: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Madrid, 4th-7th of June 2012

Metodología de pruebas de rendimiento en la nube

José Antonio Rodríguez

Technical Director, Testhouse Spain

Page 16: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Madrid, 4th-7th of June 2012

• Compañía internacional centrada en ofrecer servicios de pruebas de aplicaciones y formación.

• Formada en el año 2000, Testhouse tiene oficinas en Reino Unido, España, Estados Unidos, Emiratos Árabes Unidos, Arabia Saudí y la India.

• Equipo dinámico con amplia experiencia demostrable en la calidad del software.

Page 17: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Madrid, 4th-7th of June 2012

Requisitos previos

Elegir una herramienta adecuada a la aplicación bajo prueba

Diseñar un entorno de pruebas de rendimiento apropiado

Marcar metas de rendimiento apropiadas y realistas

Asegurarse que la aplicación es suficientemente estable para las pruebas de rendimiento

Obtener una “congelación del código”

Identificar y convertir en scripts los procesos de negocio críticos

Obtener suficientes datos de prueba, y que estos sean de calidad

Identificar los indicadores de rendimiento clave en nuestra aplicación bajo pruebas

Planificar con suficiente tiempo para unas pruebas de rendimiento realistas

Page 18: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Madrid, 4th-7th of June 2012

Planificación

Preparación

Ejecución

Cierre

MetodologíaEstrategia Pruebas

Instalación Herramientas

Entorno Pruebas + Datos

Diseño Casos de Prueba

Estrategia Pruebas

Configuración Monitores

Scripting

Smoke Test

Línea Base

Soak Test Pruebas Carga Otros

Stress

Informe Final

Pruebas de Rendimiento

An

álisis + C

am

bios +

Inform

es

• Establecer expectativas

• Planificación del proyecto

• Descripción del entorno

• Identificación responsables

• Descripción de los escenarios de pruebas

• Descripción de los casos de prueba

• Descripción de los monitores

• Documento “vivo”

Entorno Pruebas + Datos

• Configuración Entorno de pruebas (pre-prod)

• Carga de datos

Instalación Herramientas

• Herramientas de pruebas de carga

• Herramientas de monitorización de sistemas

• Otras herramientas (reporting...)

Diseño Casos de Prueba

• Transacciones• Validaciones de

imágenes y texto• Juegos de datos

Configuración Monitores

• Selección de las métricas “potencialmente interesantes”

• Selección de métricas avanzadas

Scripting

• Convertir los casos de prueba en scripts automatizados

• La complejidad varia en función de la herramienta seleccionada

Smoke Test

• Verificar las fases anteriores

• No aporta valor al proyecto continuar si esta fase no se completa correctamente

Línea Base

• Establecer un estándar de comparación inicial

• Si el rendimiento no es bueno, no se debe continuar con otros tipos de pruebas

Pruebas de Rendimiento

• Proceso iterativo• Mínimo 2 iteraciones

SOAK Test

Pruebas Carga

Otros

Stress

• Prueba opcional• Solo si todas las

pruebas anteriores son satisfactorias

Informe Final

• Sumario de las pruebas ejecutadas, problemas encontrados y soluciones aportadas

• Detallar en exceso cada escenario de pruebas ejecutado no aporta valor

Éxito Garantizado!

Page 19: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Madrid, 4th-7th of June 2012

Mitos• Las pruebas de rendimiento también se pueden hacer durante el desarrollo del

sistema

Solo después de las pruebas de integración

• La creación de scripts tiene una importancia mínima en comparación con una correcta definición de los objetivos y elementos de las pruebas.

Las pruebas de rendimiento solo implican crear scripts

• Mito cierto en algunas ocasiones. Para entornos web por ejemplo, el cambio en la posición de los elementos no implica re-escribir los scripts.

Cualquier cambio en la interfaz de usuario hace necesario re-escribir todos los scripts

• Es un proceso iterativo.

Se ejecutan "sólo una vez" al final del desarrollo

• El rendimiento puede verse afectado por los datos de entrada utilizados, con lo que se debe recrear un juego de datos adecuado al objetivo de la prueba.

Los datos de entrada utilizados no son relevantes, siempre y cuando sean válidos

Page 20: The Cloud - A Game-Changer for Web and Mobile Performance Testing

Madrid, 4th-7th of June 2012

Preguntas y Respuestas

?