Check out this series here:
Part 1: The Basics
Part 2: Load Testing
Part 3: Spike Testing
If you prefer to not read the complete blog series, here are some hard and fast definitions for you:
- Smoke Tests: These tests are run in order to uncover obvious flaws in test scripts, platforms, code, etc. before committing the resources of a full test. This is done at a very basic level when Validating a User Scenario. Depending on your needs, you may want to run a smoke test with more VUs and for a longer period of time.
- Load Tests: These tests are run to evaluate whether or not performance goals are met and to confirm that all system issues have been identified and resolved.
- Max Capacity Tests: These tests are run to define the maximum number of concurrent users the system can accommodate while continuing to perform as expected.
- Stress Tests: These tests are run to determine a breaking point and to evaluate what happens when the system breaks.
- Endurance tests: These tests are designed to find problems that occur when a system is put under slight pressure for a long period of time (e.g. memory leaks). If a business needs to be functional 24/7, Endurance Tests are essential.
- Robustness Tests: This “functional testing under load” is designed to validate that a system continues to function as expected when put under abnormal pressure. They are useful for evaluating failover and disaster recover procedures.