4. Web speed is a user experience
● <0,5 s : loading looks instantaneous
● 0,5-2 s : not instantaneous, but acceptable
● > 3 s : users start leaving your site
5. Put things into perspective
Product Owner requirement :
Every page should show up under 200ms
WRONG !
User expectations = per use case!
13. Types of load tests
● Capacity Test
● Stress Test
● Endurance Test
14. Capacity Test
Goal :
Determine how much load your system can hold
How :
Repeat the same scenario over and over, but add virtual
users every time until performance starts degrading.
15. A response time under 1 s is expected
-> user cap : 1500 users
16. Stress Test
Goal :
Study system behavior in case of heavy load, during AND
after
How :
Find the max load your system can handle, and then run
the scenario with a heavier load.
17. 10k users for 1 min, then 1k :
webapp struggles, but stabilizes
18. Endurance Test
Goal :
Validate system behavior after a long period of activity.
How :
Run the scenario with a manageable load, but for a long
period of time (several hours at least).
20. Ramps
Start virtual users progressively, because that's what real
users do !
Ramps also help to warm up your system.
21. Reports
The purpose of load injectors : stress your app and
produces reports
● Meaningful reports help developers analyze stress tests
results and what to make of them
● Something shiny to give to your boss
22. The good, the bad and the ugly
metrics
Every metric can be useful, but some less than others...
● Response time min/max = worst case/best case
● Mean can be biased in case of extreme values
Response time is a physical phenomenon
=> Statistically distributed
25. Part of the development process
Like any other functional test, load testing should be :
● integrated early in the development cycle
● automated
● versioned