SlideShare ist ein Scribd-Unternehmen logo
1 von 28
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

Weitere ähnliche Inhalte

Was ist angesagt?

Load and performance testing
Load and performance testingLoad and performance testing
Load and performance testing
Qualitest
 
LoadRunner Performance Testing
LoadRunner Performance TestingLoadRunner Performance Testing
LoadRunner Performance Testing
Atul Pant
 
Performance Testing With Loadrunner
Performance Testing With LoadrunnerPerformance Testing With Loadrunner
Performance Testing With Loadrunner
vladimir zaremba
 

Was ist angesagt? (20)

Getting start with Performance Testing
Getting start with Performance Testing Getting start with Performance Testing
Getting start with Performance Testing
 
Load and performance testing
Load and performance testingLoad and performance testing
Load and performance testing
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
 
Infographic: Importance of Performance Testing
Infographic: Importance of Performance TestingInfographic: Importance of Performance Testing
Infographic: Importance of Performance Testing
 
JMeter
JMeterJMeter
JMeter
 
LoadRunner Performance Testing
LoadRunner Performance TestingLoadRunner Performance Testing
LoadRunner Performance Testing
 
QA. Load Testing
QA. Load TestingQA. Load Testing
QA. Load Testing
 
Types of performance testing
Types of performance testingTypes of performance testing
Types of performance testing
 
Performance Testing And Its Type | Benefits Of Performance Testing
Performance Testing And Its Type | Benefits Of Performance TestingPerformance Testing And Its Type | Benefits Of Performance Testing
Performance Testing And Its Type | Benefits Of Performance Testing
 
Performance testing
Performance testingPerformance testing
Performance testing
 
Performance Testing using LoadRunner
Performance Testing using LoadRunnerPerformance Testing using LoadRunner
Performance Testing using LoadRunner
 
QSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load RunnerQSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load Runner
 
What is Performance Testing?
What is Performance Testing?What is Performance Testing?
What is Performance Testing?
 
Performance testing and reporting with JMeter
Performance testing and reporting with JMeterPerformance testing and reporting with JMeter
Performance testing and reporting with JMeter
 
Load Testing and JMeter Presentation
Load Testing and JMeter PresentationLoad Testing and JMeter Presentation
Load Testing and JMeter Presentation
 
Introduction to jmeter
Introduction to jmeterIntroduction to jmeter
Introduction to jmeter
 
Performance testing with JMeter
Performance testing with JMeterPerformance testing with JMeter
Performance testing with JMeter
 
Performance Testing With Loadrunner
Performance Testing With LoadrunnerPerformance Testing With Loadrunner
Performance Testing With Loadrunner
 
Performance testing
Performance testingPerformance testing
Performance testing
 
Performance Requirement Gathering
Performance Requirement GatheringPerformance Requirement Gathering
Performance Requirement Gathering
 

Andere mochten auch

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
 
Microservices_vs_SOA
Microservices_vs_SOAMicroservices_vs_SOA
Microservices_vs_SOA
Yakov Liskoff
 

Andere mochten auch (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.
 

Ähnlich wie Load Testing Best Practices

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
 
PerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunnerPerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunner
techgajanan
 
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 Recent
Future 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 T
Future Simmons
 

Ähnlich wie 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
 
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
 
QSpiders - Introduction to JMeter
QSpiders - Introduction to JMeterQSpiders - Introduction to JMeter
QSpiders - Introduction to JMeter
 
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
 
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
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
 

Mehr von Apica

Mehr von 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
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Kürzlich hochgeladen (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

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