SlideShare a Scribd company logo
Load Testing Best Practices
Why Load Test?
Performance Matters
Organizations with degraded business apps (IDG)
Problems identified for IT by end-users (EMA)
- employees – 43%
- business stakeholders – 13%
- customers – 12%
Problems resolved > 1 month, if ever (Forrester)
Engineering time spent in triage (TechValidate)
75%
68%
31%
40%
Unit and Functional Tests Don’t Find Everything
• Concurrency Bugs
– Bugs that only present when same code is run multiple times at the same time
• Compositional Bugs
– Bugs caused by the interplay between separate pieces of your application
• DB Indexes and Locks
– Do the indexes and query locks on your database play nicely at load
• Application or Web Server Configuration
– Do your application or web servers exceed memory, socket, or other configuration
constraints
• Infrastructure Limitations
– Bandwidth, Session Tables, Disk IO, Etc.
Application complexity is Increasing
THEN
Application Complexity is Increasing
NOW
Can You Answer These Basic Questions?
• What are your application’s bottlenecks?
• Performance at normal and peak usage
levels?
• Most common causes of
performance issues or load based
failures?
• Is your hardware optimized to meet business
objectives?
What kind of load test
should you use?
Load Test Types
Stress Concurrency Disaster Recovery
Stress Tests
Continuously increase load to determine
absolute theoretical bottlenecks and
breaking points
• Start with known good traffic levels
• Run successive tests while doubling the traffic each time
• When breaking point is found, you can run tests between the last
successful test and this one to find your exact breaking point(s)
Concurrency Tests
Realistic traffic to find practical performance
and failure limits
• Determine your actual traffic levels (average and peak), and the ratio
of user flows/actions
• Run a combination of load tests that simulate realistic traffic
• Perform “what if” tests by either changing the mix of user
flows/actions, or increasing the load of one or more of them
• Concurrency Tests against auto-scaling environments can test
scaling response times
Disaster Recovery Tests
Sustained traffic at realistic load levels to
test application response to failures
• Start a long-running load test
• Simulate various application or infrastructure failures (e.g. turn off a
web server, or unplug a DB)
• See if failover processes work as intended, and as fast as required
• DR tests without simulated failures are ENDURANCE tests
Recording load test
scripts
Questions to Ask When Recording Scripts
What do you want to know?
• Max concurrent users before failure
• Performance at expected peak
• 3rd party content impact on performance
• Current bottlenecks
• Auto-scaling results at various loads
• Etc.
Questions to Ask When Recording Scripts
What requests matter?
• Do you care about static/CDN served content?
• Do you need to include 3rd party content?
• Do supporting requests (e.g. auto-populate) matter?
Questions to Ask When Recording Scripts
Do you need unique or dynamic data?
• Usernames and passwords
• Form data (e.g. dates)
• Product or record ID’s
• Etc.
Questions to Ask When Recording Scripts
What constitutes a failure?
• Content verification
• HTTP Status checks
• General or request specific time limits
• Unusual response sizes
Steps to Recording Scripts
1. Determine the user flow
2. Record using a proxy recorder
3. Remove unnecessary requests
4. Handle variables
5. Add external data
6. Configure failure detection
Running Load Tests
Considerations when running Load Tests
•SaaS vs Private
•Target Environment (Dev, DR, Prod)
•Other performance metrics (APM, etc.)
•Database preparation
•Team communication methods
•Criteria for aborting
Interpreting Results
What Does It Mean? (Load Curves)
USERS
SESSIONDURATION
USERS
THROUGHPUT
USERS
FAILURES/ERRORS
Ideal Results
What Does It Mean? (Load Curves)
USERS
SESSIONDURATION
USERS
THROUGHPUT
USERS
FAILURES/ERRORS
Finding Peak Load
SAFE PEAK UNSTABLE
When to Load Test
Load Testing @ Deployment Stages
• Dev Environments
– Good for finding problems early, but unreliable for absolute performance metrics
– Catch concurrency, composition, or DB problems
• Staging/QA Environments
– Catch problems caused by rolled up commits that weren’t visible when testing singular changes
– Compare to previous runs to get early warnings for reduced performance or peak capacity
– May or may not be reliable indicators of production performance depending on the stability of the
environment, and similarity to the production environment
• Pre-Production
– Should be as close to the production environment as possible
– Best indication of production performance and load capacity before live deployment
• Production
– Useful for absolute verification of readiness for expected traffic spikes (e.g. product launces, sales,
holidays, marketing events)
– Can be used for periodic validations (DR, seamless code deployment, performance validation)
Questions?
Additional Resources
apicasystems.com: Enterprise cloud and mobile performance solutions
- Whitepapers, Webinars, Case Studies
- Blog
- Download Apica Zebratester Free Edition | 50 Free VUs
- Signup for Apica LoadTest Free Trial | 500 Free VUs
- Signup for Apica Monitoring Free Trial
community.zebratester.com: Load test community

More Related Content

What's hot

Load Testing Strategy 101
Load Testing Strategy 101Load Testing Strategy 101
Load Testing Strategy 101
iradari
 
LoadRunner Performance Testing
LoadRunner Performance TestingLoadRunner Performance Testing
LoadRunner Performance TestingAtul Pant
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
Tharinda Liyanage
 
Performance testing with Jmeter
Performance testing with JmeterPerformance testing with Jmeter
Performance testing with Jmeter
Prashanth Kumar
 
Performance testing with JMeter
Performance testing with JMeterPerformance testing with JMeter
Performance testing with JMeter
Mikael Kundert
 
Load Testing and JMeter Presentation
Load Testing and JMeter PresentationLoad Testing and JMeter Presentation
Load Testing and JMeter Presentation
Neill Lima
 
QSpiders - Introduction to JMeter
QSpiders - Introduction to JMeterQSpiders - Introduction to JMeter
QSpiders - Introduction to JMeter
Qspiders - Software Testing Training Institute
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
sharmaparish
 
Performance Testing using LoadRunner
Performance Testing using LoadRunnerPerformance Testing using LoadRunner
Performance Testing using LoadRunner
Kumar Gupta
 
Loadrunner presentation
Loadrunner presentationLoadrunner presentation
Loadrunner presentationmedsherb
 
Load Runner
Load RunnerLoad Runner
Load Runner
Shama Ahsan
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
Selin Gungor
 
Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeterBhojan Rajan
 
Performance Testing Using JMeter | Edureka
Performance Testing Using JMeter | EdurekaPerformance Testing Using JMeter | Edureka
Performance Testing Using JMeter | Edureka
Edureka!
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter intro
Mykola Kovsh
 
Jmeter Performance Testing
Jmeter Performance TestingJmeter Performance Testing
Jmeter Performance TestingAtul Pant
 
Types of performance testing
Types of performance testingTypes of performance testing
Types of performance testing
NaveenKumar Namachivayam
 
QA. Load Testing
QA. Load TestingQA. Load Testing
QA. Load Testing
Alex Galkin
 
Performance testing
Performance testingPerformance testing
Performance testing
Ranpreet kaur
 

What's hot (20)

Load Testing Strategy 101
Load Testing Strategy 101Load Testing Strategy 101
Load Testing Strategy 101
 
LoadRunner Performance Testing
LoadRunner Performance TestingLoadRunner Performance Testing
LoadRunner Performance Testing
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
 
Performance testing with Jmeter
Performance testing with JmeterPerformance testing with Jmeter
Performance testing with Jmeter
 
Performance testing with JMeter
Performance testing with JMeterPerformance testing with JMeter
Performance testing with JMeter
 
Load Testing and JMeter Presentation
Load Testing and JMeter PresentationLoad Testing and JMeter Presentation
Load Testing and JMeter Presentation
 
QSpiders - Introduction to JMeter
QSpiders - Introduction to JMeterQSpiders - Introduction to JMeter
QSpiders - Introduction to JMeter
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Performance Testing using LoadRunner
Performance Testing using LoadRunnerPerformance Testing using LoadRunner
Performance Testing using LoadRunner
 
Loadrunner presentation
Loadrunner presentationLoadrunner presentation
Loadrunner presentation
 
Load Runner
Load RunnerLoad Runner
Load Runner
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeter
 
Performance Testing Using JMeter | Edureka
Performance Testing Using JMeter | EdurekaPerformance Testing Using JMeter | Edureka
Performance Testing Using JMeter | Edureka
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter intro
 
JMeter
JMeterJMeter
JMeter
 
Jmeter Performance Testing
Jmeter Performance TestingJmeter Performance Testing
Jmeter Performance Testing
 
Types of performance testing
Types of performance testingTypes of performance testing
Types of performance testing
 
QA. Load Testing
QA. Load TestingQA. Load Testing
QA. Load Testing
 
Performance testing
Performance testingPerformance testing
Performance testing
 

Viewers also liked

10 Things You Didn’t Know About Mobile Email from Litmus & HubSpot
 10 Things You Didn’t Know About Mobile Email from Litmus & HubSpot 10 Things You Didn’t Know About Mobile Email from Litmus & HubSpot
10 Things You Didn’t Know About Mobile Email from Litmus & HubSpot
HubSpot
 
Integrated Content Teams (Gnostyx)
Integrated Content Teams (Gnostyx)Integrated Content Teams (Gnostyx)
Integrated Content Teams (Gnostyx)
Joe Gollner
 
Benefits of Concurrent Cognitive and Usability Testing
Benefits of Concurrent Cognitive and Usability TestingBenefits of Concurrent Cognitive and Usability Testing
Benefits of Concurrent Cognitive and Usability Testing
Jennifer Romano Bergstrom
 
Apica 2016 Statistics
Apica 2016 StatisticsApica 2016 Statistics
Apica 2016 Statistics
Apica
 
Load testing with Blitz
Load testing with BlitzLoad testing with Blitz
Load testing with Blitz
Lindsay Holmwood
 
Load Runner
Load RunnerLoad Runner
Load Runner
Vladimir Soghoyan
 
Microservices_vs_SOA
Microservices_vs_SOAMicroservices_vs_SOA
Microservices_vs_SOAYakov Liskoff
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runner
Himanshu
 
Soap vs. rest - which is right web service protocol for your need?
Soap vs. rest -  which is right web service protocol for your need?Soap vs. rest -  which is right web service protocol for your need?
Soap vs. rest - which is right web service protocol for your need?
Vijay Prasad Gupta
 
How to successfully load test over a million concurrent users stp con demo
How to successfully load test over a million concurrent users stp con demoHow to successfully load test over a million concurrent users stp con demo
How to successfully load test over a million concurrent users stp con demo
Apica
 
EMCW2015 - Containers vs VMs
EMCW2015 - Containers vs VMsEMCW2015 - Containers vs VMs
EMCW2015 - Containers vs VMs
Clinton Kitson
 
Load testing with J meter
Load testing with J meterLoad testing with J meter
Load testing with J meter
Manoj Shankaramanchi
 
Appello Cds memoria avvocatura Stato ordinanza Cds con annotazioni ever note
 Appello Cds memoria avvocatura Stato ordinanza Cds con annotazioni ever note  Appello Cds memoria avvocatura Stato ordinanza Cds con annotazioni ever note
Appello Cds memoria avvocatura Stato ordinanza Cds con annotazioni ever note
Paolo Ferraro
 
Presentación ABP.
Presentación ABP.Presentación ABP.
Presentación ABP.
AbrahamGutierrezCrespo
 

Viewers also liked (15)

10 Things You Didn’t Know About Mobile Email from Litmus & HubSpot
 10 Things You Didn’t Know About Mobile Email from Litmus & HubSpot 10 Things You Didn’t Know About Mobile Email from Litmus & HubSpot
10 Things You Didn’t Know About Mobile Email from Litmus & HubSpot
 
Integrated Content Teams (Gnostyx)
Integrated Content Teams (Gnostyx)Integrated Content Teams (Gnostyx)
Integrated Content Teams (Gnostyx)
 
Benefits of Concurrent Cognitive and Usability Testing
Benefits of Concurrent Cognitive and Usability TestingBenefits of Concurrent Cognitive and Usability Testing
Benefits of Concurrent Cognitive and Usability Testing
 
Apica 2016 Statistics
Apica 2016 StatisticsApica 2016 Statistics
Apica 2016 Statistics
 
Load testing with Blitz
Load testing with BlitzLoad testing with Blitz
Load testing with Blitz
 
Load Runner
Load RunnerLoad Runner
Load Runner
 
Microservices_vs_SOA
Microservices_vs_SOAMicroservices_vs_SOA
Microservices_vs_SOA
 
Soap Vs Rest
Soap Vs RestSoap Vs Rest
Soap Vs Rest
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runner
 
Soap vs. rest - which is right web service protocol for your need?
Soap vs. rest -  which is right web service protocol for your need?Soap vs. rest -  which is right web service protocol for your need?
Soap vs. rest - which is right web service protocol for your need?
 
How to successfully load test over a million concurrent users stp con demo
How to successfully load test over a million concurrent users stp con demoHow to successfully load test over a million concurrent users stp con demo
How to successfully load test over a million concurrent users stp con demo
 
EMCW2015 - Containers vs VMs
EMCW2015 - Containers vs VMsEMCW2015 - Containers vs VMs
EMCW2015 - Containers vs VMs
 
Load testing with J meter
Load testing with J meterLoad testing with J meter
Load testing with J meter
 
Appello Cds memoria avvocatura Stato ordinanza Cds con annotazioni ever note
 Appello Cds memoria avvocatura Stato ordinanza Cds con annotazioni ever note  Appello Cds memoria avvocatura Stato ordinanza Cds con annotazioni ever note
Appello Cds memoria avvocatura Stato ordinanza Cds con annotazioni ever note
 
Presentación ABP.
Presentación ABP.Presentación ABP.
Presentación ABP.
 

Similar to Load Testing Best Practices

Holiday Readiness: Best Practices for Successful Holiday Readiness Testing
Holiday Readiness: Best Practices for Successful Holiday Readiness TestingHoliday Readiness: Best Practices for Successful Holiday Readiness Testing
Holiday Readiness: Best Practices for Successful Holiday Readiness Testing
Apica
 
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
Apica
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
Anu Shaji
 
Performance testing
Performance testingPerformance testing
Performance testing
Chalana Kahandawala
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Dakiry
 
Load testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew SiemerLoad testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew Siemer
Andrew Siemer
 
Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]Munirathnam Naidu
 
Less11 3 e_loadmodule_1
Less11 3 e_loadmodule_1Less11 3 e_loadmodule_1
Less11 3 e_loadmodule_1
Suresh Mishra
 
PerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunnerPerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunnertechgajanan
 
Performance Testing With Loadrunner
Performance Testing With LoadrunnerPerformance Testing With Loadrunner
Performance Testing With Loadrunnervladimir zaremba
 
Comprehensive Performance Testing: From Early Dev to Live Production
Comprehensive Performance Testing: From Early Dev to Live ProductionComprehensive Performance Testing: From Early Dev to Live Production
Comprehensive Performance Testing: From Early Dev to Live Production
TechWell
 
Performance Testing Overview
Performance Testing OverviewPerformance Testing Overview
Performance Testing Overview
James Venetsanakos
 
Introduction to Performance Testing
Introduction to Performance TestingIntroduction to Performance Testing
Introduction to Performance Testing
jasndesilva
 
QSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load RunnerQSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load Runner
Qspiders - Software Testing Training Institute
 
Performance Assurance for Packaged Applications
Performance Assurance for Packaged ApplicationsPerformance Assurance for Packaged Applications
Performance Assurance for Packaged Applications
Alexander Podelko
 
performancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdfperformancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdf
MAshok10
 
Performance Test Slideshow Recent
Performance Test Slideshow RecentPerformance Test Slideshow Recent
Performance Test Slideshow RecentFuture Simmons
 
Performance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TPerformance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TFuture Simmons
 
Critical Preflight Checks for Your EPM Applications
Critical Preflight Checks for Your EPM ApplicationsCritical Preflight Checks for Your EPM Applications
Critical Preflight Checks for Your EPM Applications
Datavail
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellence
veehikle
 

Similar to Load Testing Best Practices (20)

Holiday Readiness: Best Practices for Successful Holiday Readiness Testing
Holiday Readiness: Best Practices for Successful Holiday Readiness TestingHoliday Readiness: Best Practices for Successful Holiday Readiness Testing
Holiday Readiness: Best Practices for Successful Holiday Readiness Testing
 
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Performance testing
Performance testingPerformance testing
Performance testing
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
 
Load testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew SiemerLoad testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew Siemer
 
Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]
 
Less11 3 e_loadmodule_1
Less11 3 e_loadmodule_1Less11 3 e_loadmodule_1
Less11 3 e_loadmodule_1
 
PerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunnerPerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunner
 
Performance Testing With Loadrunner
Performance Testing With LoadrunnerPerformance Testing With Loadrunner
Performance Testing With Loadrunner
 
Comprehensive Performance Testing: From Early Dev to Live Production
Comprehensive Performance Testing: From Early Dev to Live ProductionComprehensive Performance Testing: From Early Dev to Live Production
Comprehensive Performance Testing: From Early Dev to Live Production
 
Performance Testing Overview
Performance Testing OverviewPerformance Testing Overview
Performance Testing Overview
 
Introduction to Performance Testing
Introduction to Performance TestingIntroduction to Performance Testing
Introduction to Performance Testing
 
QSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load RunnerQSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load Runner
 
Performance Assurance for Packaged Applications
Performance Assurance for Packaged ApplicationsPerformance Assurance for Packaged Applications
Performance Assurance for Packaged Applications
 
performancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdfperformancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdf
 
Performance Test Slideshow Recent
Performance Test Slideshow RecentPerformance Test Slideshow Recent
Performance Test Slideshow Recent
 
Performance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TPerformance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N T
 
Critical Preflight Checks for Your EPM Applications
Critical Preflight Checks for Your EPM ApplicationsCritical Preflight Checks for Your EPM Applications
Critical Preflight Checks for Your EPM Applications
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellence
 

More from Apica

Top 7 DevOps Trends to follow in 2024 by Apica
Top 7 DevOps Trends to follow in 2024 by ApicaTop 7 DevOps Trends to follow in 2024 by Apica
Top 7 DevOps Trends to follow in 2024 by Apica
Apica
 
Load Testing and Continuous Integration
Load Testing and Continuous IntegrationLoad Testing and Continuous Integration
Load Testing and Continuous Integration
Apica
 
Apica Company Summary 2016
Apica Company Summary 2016Apica Company Summary 2016
Apica Company Summary 2016
Apica
 
How agile performance testing helps automate and scale test processes
How agile performance testing helps automate and scale test processesHow agile performance testing helps automate and scale test processes
How agile performance testing helps automate and scale test processes
Apica
 
Performance Testing Terms
Performance Testing Terms Performance Testing Terms
Performance Testing Terms
Apica
 
Apica Company Summary
Apica Company SummaryApica Company Summary
Apica Company Summary
Apica
 
EMA/Apica October 2016 Event: User Environment Management For Digital Transfo...
EMA/Apica October 2016 Event: User Environment Management For Digital Transfo...EMA/Apica October 2016 Event: User Environment Management For Digital Transfo...
EMA/Apica October 2016 Event: User Environment Management For Digital Transfo...
Apica
 
Eli Stull STPCon Spring 2017 Keynote
Eli Stull STPCon Spring 2017 KeynoteEli Stull STPCon Spring 2017 Keynote
Eli Stull STPCon Spring 2017 Keynote
Apica
 
Apica Corporate Overview and Summary
Apica Corporate Overview and SummaryApica Corporate Overview and Summary
Apica Corporate Overview and Summary
Apica
 
Performance Monitoring Best Practices
Performance Monitoring Best PracticesPerformance Monitoring Best Practices
Performance Monitoring Best Practices
Apica
 

More from Apica (10)

Top 7 DevOps Trends to follow in 2024 by Apica
Top 7 DevOps Trends to follow in 2024 by ApicaTop 7 DevOps Trends to follow in 2024 by Apica
Top 7 DevOps Trends to follow in 2024 by Apica
 
Load Testing and Continuous Integration
Load Testing and Continuous IntegrationLoad Testing and Continuous Integration
Load Testing and Continuous Integration
 
Apica Company Summary 2016
Apica Company Summary 2016Apica Company Summary 2016
Apica Company Summary 2016
 
How agile performance testing helps automate and scale test processes
How agile performance testing helps automate and scale test processesHow agile performance testing helps automate and scale test processes
How agile performance testing helps automate and scale test processes
 
Performance Testing Terms
Performance Testing Terms Performance Testing Terms
Performance Testing Terms
 
Apica Company Summary
Apica Company SummaryApica Company Summary
Apica Company Summary
 
EMA/Apica October 2016 Event: User Environment Management For Digital Transfo...
EMA/Apica October 2016 Event: User Environment Management For Digital Transfo...EMA/Apica October 2016 Event: User Environment Management For Digital Transfo...
EMA/Apica October 2016 Event: User Environment Management For Digital Transfo...
 
Eli Stull STPCon Spring 2017 Keynote
Eli Stull STPCon Spring 2017 KeynoteEli Stull STPCon Spring 2017 Keynote
Eli Stull STPCon Spring 2017 Keynote
 
Apica Corporate Overview and Summary
Apica Corporate Overview and SummaryApica Corporate Overview and Summary
Apica Corporate Overview and Summary
 
Performance Monitoring Best Practices
Performance Monitoring Best PracticesPerformance Monitoring Best Practices
Performance Monitoring Best Practices
 

Recently uploaded

De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
Fwdays
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 

Recently uploaded (20)

De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 

Load Testing Best Practices

  • 1. Load Testing Best Practices
  • 3. Performance Matters Organizations with degraded business apps (IDG) Problems identified for IT by end-users (EMA) - employees – 43% - business stakeholders – 13% - customers – 12% Problems resolved > 1 month, if ever (Forrester) Engineering time spent in triage (TechValidate) 75% 68% 31% 40%
  • 4. Unit and Functional Tests Don’t Find Everything • Concurrency Bugs – Bugs that only present when same code is run multiple times at the same time • Compositional Bugs – Bugs caused by the interplay between separate pieces of your application • DB Indexes and Locks – Do the indexes and query locks on your database play nicely at load • Application or Web Server Configuration – Do your application or web servers exceed memory, socket, or other configuration constraints • Infrastructure Limitations – Bandwidth, Session Tables, Disk IO, Etc.
  • 7. Application Complexity is Increasing NOW
  • 8. Can You Answer These Basic Questions? • What are your application’s bottlenecks? • Performance at normal and peak usage levels? • Most common causes of performance issues or load based failures? • Is your hardware optimized to meet business objectives?
  • 9. What kind of load test should you use?
  • 10. Load Test Types Stress Concurrency Disaster Recovery
  • 11. Stress Tests Continuously increase load to determine absolute theoretical bottlenecks and breaking points • Start with known good traffic levels • Run successive tests while doubling the traffic each time • When breaking point is found, you can run tests between the last successful test and this one to find your exact breaking point(s)
  • 12. Concurrency Tests Realistic traffic to find practical performance and failure limits • Determine your actual traffic levels (average and peak), and the ratio of user flows/actions • Run a combination of load tests that simulate realistic traffic • Perform “what if” tests by either changing the mix of user flows/actions, or increasing the load of one or more of them • Concurrency Tests against auto-scaling environments can test scaling response times
  • 13. Disaster Recovery Tests Sustained traffic at realistic load levels to test application response to failures • Start a long-running load test • Simulate various application or infrastructure failures (e.g. turn off a web server, or unplug a DB) • See if failover processes work as intended, and as fast as required • DR tests without simulated failures are ENDURANCE tests
  • 15. Questions to Ask When Recording Scripts What do you want to know? • Max concurrent users before failure • Performance at expected peak • 3rd party content impact on performance • Current bottlenecks • Auto-scaling results at various loads • Etc.
  • 16. Questions to Ask When Recording Scripts What requests matter? • Do you care about static/CDN served content? • Do you need to include 3rd party content? • Do supporting requests (e.g. auto-populate) matter?
  • 17. Questions to Ask When Recording Scripts Do you need unique or dynamic data? • Usernames and passwords • Form data (e.g. dates) • Product or record ID’s • Etc.
  • 18. Questions to Ask When Recording Scripts What constitutes a failure? • Content verification • HTTP Status checks • General or request specific time limits • Unusual response sizes
  • 19. Steps to Recording Scripts 1. Determine the user flow 2. Record using a proxy recorder 3. Remove unnecessary requests 4. Handle variables 5. Add external data 6. Configure failure detection
  • 21. Considerations when running Load Tests •SaaS vs Private •Target Environment (Dev, DR, Prod) •Other performance metrics (APM, etc.) •Database preparation •Team communication methods •Criteria for aborting
  • 23. What Does It Mean? (Load Curves) USERS SESSIONDURATION USERS THROUGHPUT USERS FAILURES/ERRORS Ideal Results
  • 24. What Does It Mean? (Load Curves) USERS SESSIONDURATION USERS THROUGHPUT USERS FAILURES/ERRORS Finding Peak Load SAFE PEAK UNSTABLE
  • 25. When to Load Test
  • 26. Load Testing @ Deployment Stages • Dev Environments – Good for finding problems early, but unreliable for absolute performance metrics – Catch concurrency, composition, or DB problems • Staging/QA Environments – Catch problems caused by rolled up commits that weren’t visible when testing singular changes – Compare to previous runs to get early warnings for reduced performance or peak capacity – May or may not be reliable indicators of production performance depending on the stability of the environment, and similarity to the production environment • Pre-Production – Should be as close to the production environment as possible – Best indication of production performance and load capacity before live deployment • Production – Useful for absolute verification of readiness for expected traffic spikes (e.g. product launces, sales, holidays, marketing events) – Can be used for periodic validations (DR, seamless code deployment, performance validation)
  • 28. Additional Resources apicasystems.com: Enterprise cloud and mobile performance solutions - Whitepapers, Webinars, Case Studies - Blog - Download Apica Zebratester Free Edition | 50 Free VUs - Signup for Apica LoadTest Free Trial | 500 Free VUs - Signup for Apica Monitoring Free Trial community.zebratester.com: Load test community