How to test performance and not die trying

Diego Cardozo
Diego CardozoPrincipal Performance Engineer at Oracle
How toHow to
test performancetest performance
and not die tryingand not die trying
Diego Cardozo - Sr. Web Performance Engineer
NetSuite
AgendaAgenda
What to measure
Quick tests
Automation
Selling performance
What to measure (1)What to measure (1)
Types of performance testing for web applications
(According to Microsoft)
Test type Goal
Performance Determine speed and scalability
Load Determine behavior under normal
circumstances
Stress Determine behavior beyond normal
circumstances
Capacity How many users or transactions are supported
while meeting performance goals
What to measure (2)What to measure (2)
3 alternatives to set performance goals
Performance budget
Business-specific measurement
like Twitter's "time to first tweet"
Google's RAIL model
What to measure (3)What to measure (3)
Response time limits - Ph.D Jakob Nielsenn
Time Perseption Action
0 - 16ms Continuous Animation
0 - 100ms Immediate Response
100ms - 300ms Slight delay
300ms - 1s Natural progression Load
1s+ User loses focus
10s+ Frustration
Quick testsQuick tests
Use ngrok to run local tests
Utilities and plugins for CI and automation
Chrome's dev tools
Measurements can be saved
Emulates mobile
Web page test
Google PageSpeed Insights
Automation (1)Automation (1)
First proposal - continuous process
Run performance tests along with functional
automated tests
Works together with performance budget
Knowing how performance evolves with time during
development is extremely valuable
Example: sitespeed.io
Keynote
Automation (2)Automation (2)
Second proposal - RUM
Performance information is sent directly and
passively from real users
Ideal for mobile apps
The testing team can experiment with RUM tools
from day one
When the site or app goes live you will already have
the necessary know how on interpreting results
Example: (mobile)HP AppPulse
Selling performance (1)Selling performance (1)
Present this ideas to your boss/customer
: 2% slower = 2% less searching per user
: 400ms faster = 9% more traffic
: 100ms faster = 1% more revenue
: 5s faster = 25% more page views, 7 to 12%
more revenue
uses website speed in search rankings
Google
Yahoo
Amazon
Shopzilla
Google
Selling performance (2)Selling performance (2)
Generate revenue directly from performance
Performance can be sold as a service or added value
Generates revenue which will cover for the cost of
paid tools
If offered but not sold, it will still help you set
expectations and prevent performance-related issues
Other alternatives such as performance alerts or paid
reports can be sold too
ResourcesResources
Slides
RAIL
Microsoft's performance testing guide for web apps
slides.com/diegocard/testeando-performance
www.smashingmagazine.com/2015/10/rail-user-
centric-model-performance
msdn.microsoft.com/en-us/library/bb924375.aspx
¿Questions?¿Questions?
diegocard@gmail.comdiegocard@gmail.com
1 of 12

Recommended

Optimize performance and not die trying by
Optimize performance and not die tryingOptimize performance and not die trying
Optimize performance and not die tryingDiego Cardozo
1.2K views16 slides
Test Automation by
Test AutomationTest Automation
Test Automation99pillar
127 views12 slides
Webinar: Estrategias para optimizar los costos de testing by
Webinar: Estrategias para optimizar los costos de testingWebinar: Estrategias para optimizar los costos de testing
Webinar: Estrategias para optimizar los costos de testingFederico Toledo
192 views40 slides
Improving Your Government Proposals' Pwin Part 1: Assess Your Proposal by
Improving Your Government Proposals' Pwin Part 1: Assess Your ProposalImproving Your Government Proposals' Pwin Part 1: Assess Your Proposal
Improving Your Government Proposals' Pwin Part 1: Assess Your ProposalOST Global Solutions
201 views10 slides
ASP.NET Best Practices - Useful Tips from the Trenches by
ASP.NET Best Practices - Useful Tips from the TrenchesASP.NET Best Practices - Useful Tips from the Trenches
ASP.NET Best Practices - Useful Tips from the TrenchesHabeeb Rushdan
5.3K views32 slides
Anand Ramdeo - Automation Frameworks - EuroSTAR 2012 by
Anand Ramdeo - Automation Frameworks - EuroSTAR 2012Anand Ramdeo - Automation Frameworks - EuroSTAR 2012
Anand Ramdeo - Automation Frameworks - EuroSTAR 2012TEST Huddle
326 views21 slides

More Related Content

Similar to How to test performance and not die trying

Agile Development of High Performance Applications by
Agile Development of High Performance ApplicationsAgile Development of High Performance Applications
Agile Development of High Performance ApplicationsFabian Lange
2.9K views39 slides
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM by
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQMIBM Rational
3.6K views27 slides
Performance Testing by
Performance TestingPerformance Testing
Performance TestingSelin Gungor
4.5K views27 slides
Packaged vs. Custom Application Testing by
Packaged vs. Custom Application TestingPackaged vs. Custom Application Testing
Packaged vs. Custom Application TestingWorksoft
803 views29 slides
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes... by
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...Bitbar
985 views38 slides
Implementing AI for improved performance testing – Cuneiform.pdf by
Implementing AI for improved performance testing – Cuneiform.pdfImplementing AI for improved performance testing – Cuneiform.pdf
Implementing AI for improved performance testing – Cuneiform.pdfCuneiform Consulting Pvt Ltd.
6 views8 slides

Similar to How to test performance and not die trying(20)

Agile Development of High Performance Applications by Fabian Lange
Agile Development of High Performance ApplicationsAgile Development of High Performance Applications
Agile Development of High Performance Applications
Fabian Lange2.9K views
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM by IBM Rational
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
IBM Rational3.6K views
Performance Testing by Selin Gungor
Performance TestingPerformance Testing
Performance Testing
Selin Gungor4.5K views
Packaged vs. Custom Application Testing by Worksoft
Packaged vs. Custom Application TestingPackaged vs. Custom Application Testing
Packaged vs. Custom Application Testing
Worksoft803 views
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes... by Bitbar
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...
Bitbar985 views
Andy singleton continuous delivery-fcb - nov 2014 by Brad Power
Andy singleton   continuous delivery-fcb - nov 2014Andy singleton   continuous delivery-fcb - nov 2014
Andy singleton continuous delivery-fcb - nov 2014
Brad Power640 views
Ganesha.U.S_Resume by Ganesh Us
Ganesha.U.S_ResumeGanesha.U.S_Resume
Ganesha.U.S_Resume
Ganesh Us294 views
Why not let apm do all the heavy lifting beyond the basics of monitoring | Sw... by Swatantra Kumar
Why not let apm do all the heavy lifting beyond the basics of monitoring | Sw...Why not let apm do all the heavy lifting beyond the basics of monitoring | Sw...
Why not let apm do all the heavy lifting beyond the basics of monitoring | Sw...
Swatantra Kumar108 views
The Tester’s Role: Balancing Technical Acumen and User Advocacy by TechWell
The Tester’s Role: Balancing Technical Acumen and User AdvocacyThe Tester’s Role: Balancing Technical Acumen and User Advocacy
The Tester’s Role: Balancing Technical Acumen and User Advocacy
TechWell235 views
Software development process for outsourcing team by Mykhail Galushko
Software development process for outsourcing teamSoftware development process for outsourcing team
Software development process for outsourcing team
Mykhail Galushko641 views
Software Estimation Techniques by kamal
Software Estimation TechniquesSoftware Estimation Techniques
Software Estimation Techniques
kamal52.9K views
Short reference architecture by Steve Feldman
Short reference architectureShort reference architecture
Short reference architecture
Steve Feldman411 views
#ATAGTR2021 Presentation : "Use of AI and ML in Performance Testing" by Adolf... by Agile Testing Alliance
#ATAGTR2021 Presentation : "Use of AI and ML in Performance Testing" by Adolf...#ATAGTR2021 Presentation : "Use of AI and ML in Performance Testing" by Adolf...
#ATAGTR2021 Presentation : "Use of AI and ML in Performance Testing" by Adolf...
ALM (Application Lifecycle Management) by Terry Cho
ALM (Application Lifecycle Management)ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)
Terry Cho29.1K views

More from Diego Cardozo

El proximo billon de usuarios by
El proximo billon de usuariosEl proximo billon de usuarios
El proximo billon de usuariosDiego Cardozo
143 views19 slides
The next billion users by
The next billion usersThe next billion users
The next billion usersDiego Cardozo
237 views19 slides
Troubleshooting Ecommerce Performance by
 Troubleshooting Ecommerce Performance Troubleshooting Ecommerce Performance
Troubleshooting Ecommerce PerformanceDiego Cardozo
174 views72 slides
Cranking It Up - SuiteWorld 2017 by
Cranking It Up  - SuiteWorld 2017Cranking It Up  - SuiteWorld 2017
Cranking It Up - SuiteWorld 2017Diego Cardozo
149 views72 slides
Speed Thrills - Suiteworld 2016 by
Speed Thrills - Suiteworld 2016Speed Thrills - Suiteworld 2016
Speed Thrills - Suiteworld 2016Diego Cardozo
117 views43 slides
Performance in the cloud by
Performance in the cloudPerformance in the cloud
Performance in the cloudDiego Cardozo
302 views12 slides

More from Diego Cardozo(15)

El proximo billon de usuarios by Diego Cardozo
El proximo billon de usuariosEl proximo billon de usuarios
El proximo billon de usuarios
Diego Cardozo143 views
Troubleshooting Ecommerce Performance by Diego Cardozo
 Troubleshooting Ecommerce Performance Troubleshooting Ecommerce Performance
Troubleshooting Ecommerce Performance
Diego Cardozo174 views
Cranking It Up - SuiteWorld 2017 by Diego Cardozo
Cranking It Up  - SuiteWorld 2017Cranking It Up  - SuiteWorld 2017
Cranking It Up - SuiteWorld 2017
Diego Cardozo149 views
Speed Thrills - Suiteworld 2016 by Diego Cardozo
Speed Thrills - Suiteworld 2016Speed Thrills - Suiteworld 2016
Speed Thrills - Suiteworld 2016
Diego Cardozo117 views
Performance in the cloud by Diego Cardozo
Performance in the cloudPerformance in the cloud
Performance in the cloud
Diego Cardozo302 views
Cómo testear performance sin morir en el intento by Diego Cardozo
Cómo testear performance sin morir en el intentoCómo testear performance sin morir en el intento
Cómo testear performance sin morir en el intento
Diego Cardozo409 views
Optimizar performance sin morir en el intento by Diego Cardozo
Optimizar performance sin morir en el intentoOptimizar performance sin morir en el intento
Optimizar performance sin morir en el intento
Diego Cardozo386 views
Testeando performance sin morir en el intento by Diego Cardozo
Testeando performance sin morir en el intentoTesteando performance sin morir en el intento
Testeando performance sin morir en el intento
Diego Cardozo458 views
Organización de aplicaciones web con Backbone.js by Diego Cardozo
Organización de aplicaciones web con Backbone.jsOrganización de aplicaciones web con Backbone.js
Organización de aplicaciones web con Backbone.js
Diego Cardozo1.5K views
Structuring web applications with Backbone.js by Diego Cardozo
Structuring web applications with Backbone.jsStructuring web applications with Backbone.js
Structuring web applications with Backbone.js
Diego Cardozo1.2K views
Component Based Software Development by Diego Cardozo
Component Based Software DevelopmentComponent Based Software Development
Component Based Software Development
Diego Cardozo2.9K views
Desarrollo de Software Basado en Componentes by Diego Cardozo
Desarrollo de Software Basado en ComponentesDesarrollo de Software Basado en Componentes
Desarrollo de Software Basado en Componentes
Diego Cardozo1.9K views
Single page applications by Diego Cardozo
Single page applicationsSingle page applications
Single page applications
Diego Cardozo2.4K views
Single Page Applications by Diego Cardozo
Single Page ApplicationsSingle Page Applications
Single Page Applications
Diego Cardozo2.4K views

Recently uploaded

Fleet Management Software in India by
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India Fleetable
11 views1 slide
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI... by
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...Marc Müller
36 views83 slides
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko... by
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...Deltares
11 views23 slides
DevsRank by
DevsRankDevsRank
DevsRankdevsrank786
11 views1 slide
Cycleops - Automate deployments on top of bare metal.pptx by
Cycleops - Automate deployments on top of bare metal.pptxCycleops - Automate deployments on top of bare metal.pptx
Cycleops - Automate deployments on top of bare metal.pptxThanassis Parathyras
30 views12 slides
El Arte de lo Possible by
El Arte de lo PossibleEl Arte de lo Possible
El Arte de lo PossibleNeo4j
38 views35 slides

Recently uploaded(20)

Fleet Management Software in India by Fleetable
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India
Fleetable11 views
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI... by Marc Müller
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Marc Müller36 views
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko... by Deltares
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
Deltares11 views
Cycleops - Automate deployments on top of bare metal.pptx by Thanassis Parathyras
Cycleops - Automate deployments on top of bare metal.pptxCycleops - Automate deployments on top of bare metal.pptx
Cycleops - Automate deployments on top of bare metal.pptx
El Arte de lo Possible by Neo4j
El Arte de lo PossibleEl Arte de lo Possible
El Arte de lo Possible
Neo4j38 views
DSD-INT 2023 HydroMT model building and river-coast coupling in Python - Bove... by Deltares
DSD-INT 2023 HydroMT model building and river-coast coupling in Python - Bove...DSD-INT 2023 HydroMT model building and river-coast coupling in Python - Bove...
DSD-INT 2023 HydroMT model building and river-coast coupling in Python - Bove...
Deltares17 views
Copilot Prompting Toolkit_All Resources.pdf by Riccardo Zamana
Copilot Prompting Toolkit_All Resources.pdfCopilot Prompting Toolkit_All Resources.pdf
Copilot Prompting Toolkit_All Resources.pdf
Riccardo Zamana6 views
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -... by Deltares
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...
Deltares6 views
DSD-INT 2023 SFINCS Modelling in the U.S. Pacific Northwest - Parker by Deltares
DSD-INT 2023 SFINCS Modelling in the U.S. Pacific Northwest - ParkerDSD-INT 2023 SFINCS Modelling in the U.S. Pacific Northwest - Parker
DSD-INT 2023 SFINCS Modelling in the U.S. Pacific Northwest - Parker
Deltares9 views
What Can Employee Monitoring Software Do?​ by wAnywhere
What Can Employee Monitoring Software Do?​What Can Employee Monitoring Software Do?​
What Can Employee Monitoring Software Do?​
wAnywhere21 views
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut... by HCLSoftware
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...
HCLSoftware6 views
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)... by Deltares
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...
Deltares9 views
Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ... by marksimpsongw
Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...
Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...
marksimpsongw76 views
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023 by Icinga
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Icinga38 views
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon by Deltares
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - AfternoonDSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon
Deltares13 views
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM... by Deltares
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...
Deltares7 views

How to test performance and not die trying

  • 1. How toHow to test performancetest performance and not die tryingand not die trying Diego Cardozo - Sr. Web Performance Engineer NetSuite
  • 2. AgendaAgenda What to measure Quick tests Automation Selling performance
  • 3. What to measure (1)What to measure (1) Types of performance testing for web applications (According to Microsoft) Test type Goal Performance Determine speed and scalability Load Determine behavior under normal circumstances Stress Determine behavior beyond normal circumstances Capacity How many users or transactions are supported while meeting performance goals
  • 4. What to measure (2)What to measure (2) 3 alternatives to set performance goals Performance budget Business-specific measurement like Twitter's "time to first tweet" Google's RAIL model
  • 5. What to measure (3)What to measure (3) Response time limits - Ph.D Jakob Nielsenn Time Perseption Action 0 - 16ms Continuous Animation 0 - 100ms Immediate Response 100ms - 300ms Slight delay 300ms - 1s Natural progression Load 1s+ User loses focus 10s+ Frustration
  • 6. Quick testsQuick tests Use ngrok to run local tests Utilities and plugins for CI and automation Chrome's dev tools Measurements can be saved Emulates mobile Web page test Google PageSpeed Insights
  • 7. Automation (1)Automation (1) First proposal - continuous process Run performance tests along with functional automated tests Works together with performance budget Knowing how performance evolves with time during development is extremely valuable Example: sitespeed.io Keynote
  • 8. Automation (2)Automation (2) Second proposal - RUM Performance information is sent directly and passively from real users Ideal for mobile apps The testing team can experiment with RUM tools from day one When the site or app goes live you will already have the necessary know how on interpreting results Example: (mobile)HP AppPulse
  • 9. Selling performance (1)Selling performance (1) Present this ideas to your boss/customer : 2% slower = 2% less searching per user : 400ms faster = 9% more traffic : 100ms faster = 1% more revenue : 5s faster = 25% more page views, 7 to 12% more revenue uses website speed in search rankings Google Yahoo Amazon Shopzilla Google
  • 10. Selling performance (2)Selling performance (2) Generate revenue directly from performance Performance can be sold as a service or added value Generates revenue which will cover for the cost of paid tools If offered but not sold, it will still help you set expectations and prevent performance-related issues Other alternatives such as performance alerts or paid reports can be sold too
  • 11. ResourcesResources Slides RAIL Microsoft's performance testing guide for web apps slides.com/diegocard/testeando-performance www.smashingmagazine.com/2015/10/rail-user- centric-model-performance msdn.microsoft.com/en-us/library/bb924375.aspx