SlideShare una empresa de Scribd logo
testing user happiness
WebPageTest workshop
• User Satisfaction
• What to Measure
• How to Measure
• What to Monitor
What are we going to focus on?
Online free tool for synthetic performance testing
#PerfMatters
Qué no es?
WebPageTest NO es una herramienta de carga
No vamos a comprobar el rendimiento en situaciones de saturación
No es una herramienta que nos permita conocer el estado de nuestro servicio
No es una auditoría de código de front end ni consola de errores de javascript
Qué es?
WebPageTest es una herramienta de rendimiento a nivel browser que nos
permite determinar y automatizar resultados de visualización y renderización.
En definitiva, nos permite comprobar cuál es la experiencia de usuario
www.webpagetest.org
Qué nos permite? Mobile Testing
Mobile emulation Mode y Dispositivos
móviles desde distintas localizaciones
y con distintos User Agents
Fear the Latency
Fear the Latency
Fear is the path to the
dark side. Fear leads to
Inertia. Inertia Leads to
paralysis. Paralysis leads
to going out of Business.
Let’s Aim for Speed
What shall we Measure?
Vista Waterfall
Una vez ejecutado veremos
Sin
Cache de
Browser
Con
Cache de
Browser
Golden
Performance Rules
Time is Relative
Analytical Review Parameters
Localización
Browser
Velocidad de Conexión
Número de test a ejecutar ( coger un número Impar ;) )
First View and Repeat View ( Cache!!! )
Document Complete vs OnLoad
Ignorar Errores SSL
Capturar tcpdump
User Agent ad Hoc
Custom Headers
What shall we Measure?
Size?
What shall we Measure?
Number of Requests?
Number of Domains?
SPOF y Block
La opción de Block nos simula un error tipo 404 mientras que si usamos el SPOF nos simula un timeout.
Por ejemplo podemos comprobar con Block la diferencia entre el tiempo de carga con y sin anuncios ( bloqueando
anuncios o trackers ;) )
En cambio cuando probamos el Single Point of Failure lo que queremos comprobar es que nuestro site es resilient a 3rd
parties como por ejemplo los trackers, cómo se comporta nuestro site si el acceso a google analytics es lento o realmente
no hay servicio.
“My Mean time is fine."
Apdex Index
t = acceptable response time
satisfied = response time < t
tolerating = t < response time > 4t
frustrated = response time > 4t
Apdex [t] = (satisfied + tolerating/2)/total requests
Afterwards … in PROD ...
Time To
FIRST
BYTE
Waterfall Detalles
Cómo analizar el waterfall
Cuántos Kb tiene el html inicial
En qué segundo comienza el evento render
Cuántos socket connections hay hacia un host en concreto
Cuántas redirecciones
En qué momento hay un socket abierto contra un recurso y por qué
Custom Metrics
[iframe-count]
return document.getElementsByTagName("iframe").length;
[script-tag-count]
return document.getElementsByTagName("script").length;
[meta-viewport]
var viewport = undefined;
var metaTags=document.getElementsByTagName("meta");
for (var i = 0; i < metaTags.length; i++) {
if (metaTags[i].getAttribute("name") == "viewport") {
viewport = metaTags[i].getAttribute("content");
break;
}
}
return viewport
NO se pueden añadir operaciones asincronas :( Timers, Ajax requests etc ...
Performance
It's not just about adding more servers
REAL
USER
MONITORIN
G
Bring Up
RUM*
real user monitoring
Real User Monitoring
THINK BIG
HOW TO … Private Instance
Analytical Review Parámetros
Localización
Browser
Velocidad de Conexión
Número de test a ejecutar ( coger un número Impar ;) )
First View and Repeat View ( Cache!!! )
Document Complete vs OnLoad
Ignorar Errores SSL
Capturar tcpdump
User Agent ad Hoc
Custom Headers
Custom Metrics
[iframe-count]
return document.getElementsByTagName("iframe").length;
[script-tag-count]
return document.getElementsByTagName("script").length;
[meta-viewport]
var viewport = undefined;
var metaTags=document.getElementsByTagName("meta");
for (var i = 0; i < metaTags.length; i++) {
if (metaTags[i].getAttribute("name") == "viewport") {
viewport = metaTags[i].getAttribute("content");
break;
}
}
return viewport
NO se pueden añadir operaciones asincronas :( Timers, Ajax requests etc ...
Vista Waterfall
Una vez ejecutado veremos
Sin
Cache de
Browser
Con
Cache de
Browser
Golden
Performance Rules
Waterfall → Har File
Cómo analizar el waterfall
Cuántos Kb tiene el html inicial
En qué segundo comienza el evento render
Cuántos socket connections hay hacia un host en concreto
Cuántas redirecciones
En qué momento hay un socket abierto contra un recurso y por qué
Waterfall Detalles
SPOF y Block
La opción de Block nos simula un error tipo 404 mientras que si usamos el SPOF nos simula un timeout.
Por ejemplo podemos comprobar con Block la diferencia entre el tiempo de carga con y sin anuncios ( bloqueando
anuncios o trackers ;) )
En cambio cuando probamos el Single Point of Failure lo que queremos comprobar es que nuestro site es resilient a 3rd
parties como por ejemplo los trackers, cómo se comporta nuestro site si el acceso a google analytics es lento o realmente
no hay servicio.
Cómo detectar SPOF
con Charles Proxy y WPO
https://www.charlesproxy.com/
http://www.webpagetest.org/
Proxy > Throttiling
Tools > Map Remote
What to test
API server down?
AdBulk down?
Tracker down?
Traceroute
WPT Bulk Tester by Andy Davis
http://calendar.perfplanet.com/2014/driving-webpagetest-from-a-google-docs-spre
adsheet/

Más contenido relacionado

Destacado

Cesar vallejo 11111
Cesar vallejo 11111Cesar vallejo 11111
Cesar vallejo 11111
yarensalhua
 
Oslo Schibsted Performance Gathering
Oslo Schibsted Performance GatheringOslo Schibsted Performance Gathering
Oslo Schibsted Performance Gathering
Almudena Vivanco
 

Destacado (18)

Us20090327072
Us20090327072Us20090327072
Us20090327072
 
R118 井上孝代・伊藤武彦 (2009). 高校ステークホルダーのコンフリクトについての個人別態度構造分析:レパートリーグリッド法を用いた対話法による「...
R118 井上孝代・伊藤武彦 (2009). 高校ステークホルダーのコンフリクトについての個人別態度構造分析:レパートリーグリッド法を用いた対話法による「...R118 井上孝代・伊藤武彦 (2009). 高校ステークホルダーのコンフリクトについての個人別態度構造分析:レパートリーグリッド法を用いた対話法による「...
R118 井上孝代・伊藤武彦 (2009). 高校ステークホルダーのコンフリクトについての個人別態度構造分析:レパートリーグリッド法を用いた対話法による「...
 
My personal goals
My personal goalsMy personal goals
My personal goals
 
Cesar vallejo 11111
Cesar vallejo 11111Cesar vallejo 11111
Cesar vallejo 11111
 
Tu70
Tu70 Tu70
Tu70
 
Srinivas-Vemulapati-CV
Srinivas-Vemulapati-CVSrinivas-Vemulapati-CV
Srinivas-Vemulapati-CV
 
The performance paradox
The performance paradoxThe performance paradox
The performance paradox
 
High Performance Web Components
High Performance Web ComponentsHigh Performance Web Components
High Performance Web Components
 
G250 Ito, T. (2016, July) The results and evaluation of the interview and doc...
G250 Ito, T. (2016, July) The results and evaluation of the interview and doc...G250 Ito, T. (2016, July) The results and evaluation of the interview and doc...
G250 Ito, T. (2016, July) The results and evaluation of the interview and doc...
 
Ead x eol
Ead x eolEad x eol
Ead x eol
 
Cadernos Didáticos Jul/Dez. 2016
Cadernos Didáticos Jul/Dez. 2016Cadernos Didáticos Jul/Dez. 2016
Cadernos Didáticos Jul/Dez. 2016
 
Niji power to the user
Niji power to the userNiji power to the user
Niji power to the user
 
Rule-Driven, Fully-Configurable Asset Tracking with GIS
Rule-Driven, Fully-Configurable Asset Tracking with GISRule-Driven, Fully-Configurable Asset Tracking with GIS
Rule-Driven, Fully-Configurable Asset Tracking with GIS
 
Oslo Schibsted Performance Gathering
Oslo Schibsted Performance GatheringOslo Schibsted Performance Gathering
Oslo Schibsted Performance Gathering
 
Système alimentaire 3.0 : les voies de la disruption
Système alimentaire 3.0 : les voies de la disruptionSystème alimentaire 3.0 : les voies de la disruption
Système alimentaire 3.0 : les voies de la disruption
 
Roker Labs Food Report - Sept 2015
Roker Labs Food Report - Sept 2015Roker Labs Food Report - Sept 2015
Roker Labs Food Report - Sept 2015
 
Unicorns, Krakens, Self-Organizing Teams and other mythological beasts - #APIL15
Unicorns, Krakens, Self-Organizing Teams and other mythological beasts - #APIL15Unicorns, Krakens, Self-Organizing Teams and other mythological beasts - #APIL15
Unicorns, Krakens, Self-Organizing Teams and other mythological beasts - #APIL15
 
SREcon 2016 Performance Checklists for SREs
SREcon 2016 Performance Checklists for SREsSREcon 2016 Performance Checklists for SREs
SREcon 2016 Performance Checklists for SREs
 

Similar a WPT Midiendo la Felicidad

Servlets y jsp
Servlets y jspServlets y jsp
Servlets y jsp
dtbadboy0
 
Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011
Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011
Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011
Fátima Casaú Pérez
 
Patrones Arquitecturales Para Aplicaciones Web
Patrones Arquitecturales Para Aplicaciones WebPatrones Arquitecturales Para Aplicaciones Web
Patrones Arquitecturales Para Aplicaciones Web
guesta7f40
 

Similar a WPT Midiendo la Felicidad (20)

AJAX EN CURSO PHP
AJAX EN CURSO PHPAJAX EN CURSO PHP
AJAX EN CURSO PHP
 
Web pagetest Meetup At Trovit
Web pagetest Meetup At TrovitWeb pagetest Meetup At Trovit
Web pagetest Meetup At Trovit
 
The wpo academy_clinic_seo
The wpo academy_clinic_seoThe wpo academy_clinic_seo
The wpo academy_clinic_seo
 
[Code Camp 2009] ASP.NET MVC a full (Matías Juan Rubí + Jonathan Solarz)
[Code Camp 2009] ASP.NET MVC a full (Matías Juan Rubí + Jonathan Solarz)[Code Camp 2009] ASP.NET MVC a full (Matías Juan Rubí + Jonathan Solarz)
[Code Camp 2009] ASP.NET MVC a full (Matías Juan Rubí + Jonathan Solarz)
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"
 
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
 
Servlets y jsp
Servlets y jspServlets y jsp
Servlets y jsp
 
Curso basicoseguridadweb slideshare4
Curso basicoseguridadweb slideshare4Curso basicoseguridadweb slideshare4
Curso basicoseguridadweb slideshare4
 
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
 
Ajax
AjaxAjax
Ajax
 
The wpo academy: Qué es y que mide la velocidad de carga de una web?
The wpo academy: Qué es y que mide la velocidad de carga de una web?The wpo academy: Qué es y que mide la velocidad de carga de una web?
The wpo academy: Qué es y que mide la velocidad de carga de una web?
 
Intro a ASP.NET
Intro a ASP.NETIntro a ASP.NET
Intro a ASP.NET
 
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
 
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
 
04 17-2021 - procesando modelos tabulares global azure latam
04 17-2021 - procesando modelos tabulares global azure latam04 17-2021 - procesando modelos tabulares global azure latam
04 17-2021 - procesando modelos tabulares global azure latam
 
Creando Aplicaciones Web en el 2015
 Creando Aplicaciones Web en el 2015 Creando Aplicaciones Web en el 2015
Creando Aplicaciones Web en el 2015
 
Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011
Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011
Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011
 
¿Grails + DDD + Eventsourcing + CQRS?
¿Grails + DDD + Eventsourcing + CQRS?¿Grails + DDD + Eventsourcing + CQRS?
¿Grails + DDD + Eventsourcing + CQRS?
 
Javascript
JavascriptJavascript
Javascript
 
Patrones Arquitecturales Para Aplicaciones Web
Patrones Arquitecturales Para Aplicaciones WebPatrones Arquitecturales Para Aplicaciones Web
Patrones Arquitecturales Para Aplicaciones Web
 

Más de Almudena Vivanco

Webperfdays2014 movistar tv
Webperfdays2014 movistar tvWebperfdays2014 movistar tv
Webperfdays2014 movistar tv
Almudena Vivanco
 
cómo medir lo inmensurable: real user experience
cómo medir lo inmensurable: real user experiencecómo medir lo inmensurable: real user experience
cómo medir lo inmensurable: real user experience
Almudena Vivanco
 

Más de Almudena Vivanco (17)

Performance Microservices in the Cloud
Performance Microservices in the CloudPerformance Microservices in the Cloud
Performance Microservices in the Cloud
 
Dotnet conf2019 barcelona
Dotnet conf2019 barcelonaDotnet conf2019 barcelona
Dotnet conf2019 barcelona
 
The sWag of performance Testing
The sWag of performance TestingThe sWag of performance Testing
The sWag of performance Testing
 
Continuous Performance Testing
Continuous Performance TestingContinuous Performance Testing
Continuous Performance Testing
 
Integrating taurus and jmeter
Integrating taurus and jmeterIntegrating taurus and jmeter
Integrating taurus and jmeter
 
Fine line between performance and security
Fine line between performance and securityFine line between performance and security
Fine line between performance and security
 
Dia02 t03-s04-vlctesting2017-seminario-almudena-vivanco
Dia02 t03-s04-vlctesting2017-seminario-almudena-vivancoDia02 t03-s04-vlctesting2017-seminario-almudena-vivanco
Dia02 t03-s04-vlctesting2017-seminario-almudena-vivanco
 
Modelling performance tests
Modelling performance testsModelling performance tests
Modelling performance tests
 
Expo qa 2016
Expo qa 2016Expo qa 2016
Expo qa 2016
 
After test Barcelona 20160303
After test Barcelona 20160303After test Barcelona 20160303
After test Barcelona 20160303
 
Workshop performance vl ctesting
Workshop performance vl ctestingWorkshop performance vl ctesting
Workshop performance vl ctesting
 
Deployment Driven Development and Performance Testing TEFCON2015
Deployment Driven Development and Performance Testing TEFCON2015Deployment Driven Development and Performance Testing TEFCON2015
Deployment Driven Development and Performance Testing TEFCON2015
 
Webperfdays2014 movistar tv
Webperfdays2014 movistar tvWebperfdays2014 movistar tv
Webperfdays2014 movistar tv
 
Velocity2014 gvp
Velocity2014 gvpVelocity2014 gvp
Velocity2014 gvp
 
Speed me up!
Speed me up!Speed me up!
Speed me up!
 
cómo medir lo inmensurable: real user experience
cómo medir lo inmensurable: real user experiencecómo medir lo inmensurable: real user experience
cómo medir lo inmensurable: real user experience
 
Performance
Performance Performance
Performance
 

Último

Último (11)

Los desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMsLos desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMs
 
PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
 
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA  DE TRABAJO DE CREACION DE TABLAS EN WORDFICHA  DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
 
infografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de softwareinfografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de software
 
Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
 
Virus informático (tipos y opciones para prevenir)
Virus informático (tipos y opciones para prevenir)Virus informático (tipos y opciones para prevenir)
Virus informático (tipos y opciones para prevenir)
 
Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
 
MODULO BASICO DE WORD - I CICLO.DOC.DOC.
MODULO BASICO DE WORD - I CICLO.DOC.DOC.MODULO BASICO DE WORD - I CICLO.DOC.DOC.
MODULO BASICO DE WORD - I CICLO.DOC.DOC.
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
 
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
 
trabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docxtrabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docx
 

WPT Midiendo la Felicidad