Both test under volume; goals differ.
Load testing: behavior under expected normal-to-peak load.
- "Can system handle 1000 concurrent users?"
- "Can it process 10,000 records/hour?"
- Pass: targets met.
- Fail: not.
Used for: validation pre-production.
Stress testing: behavior under extreme load to identify breaking point.
- "What happens at 10,000 concurrent users?"
- "What happens at 1M records?"
- Identify failure modes.
- Confirm graceful degradation.
Used for: understanding limits, capacity planning.
Other related:
- Endurance testing: sustained load over hours/days. Catches slow leaks (memory leaks, accumulating data).
- Spike testing: rapid increase then decrease. Tests elasticity.
- Soak testing: sustained moderate load over days. Reliability.
Salesforce considerations:
- Salesforce-managed infrastructure — load tests confirm your customisations don't break, not the platform.
- Governor limits — load tests reveal limit issues.
- Sandbox — performance differs from production.
- Realistic data — required for meaningful tests.
Tools:
- Apache JMeter — generic.
- Gatling, k6 — modern.
- Custom Apex for in-platform load.
- Browser tools for client-side performance.
Common pitfalls:
- Load test in tiny sandbox — meaningless.
- No realistic data — different from production.
- No baseline — can't compare.
Senior QA insight: load and stress complement each other. Load validates; stress reveals.
The senior framing: plan capacity from stress test results.
