Performance testing is a type of testing for determining the speed of a computer, network or device. It checks the performance of the components of a system by passing different parameters in different load scenarios. [1]
Load:
Tests actual user load on any application or website and checks how the application behaves during normal and high loads. Performed when a development project nears to its completion.
Stress:
Tests that determine the stability and robustness of the system. It is a non-functional testing technique. This testing technique uses auto-generated simulation model that checks all the hypothetical scenarios. [1]
Function of Performance, Load, and Stress Tests:
Performance:
Performance tests measure performance against established criteria under a workload, considering latency, through put, stress, response time, or scalability tests where applicable
Performance is measured and reported against thresholds and benchmarks
Load:
Load testing typically improves performance bottlenecks, scalability and stability of the application before it is available for production.
Stress:
Measures the system on its robustness and error handling capabilities under extremely heavy load conditions. [2]
Test Results:
If new conduct several tests to establish Thresholds and Benchmarks. If established use known Thresholds and Benchmarks to test against.
Helps testers and developers identify the maximum operating capacity of applications as well as system bottlenecks.
Results of load tests can be unpredictable
Load testing depends on the number of users.
Stress:
Testers and developers should analyze the behavior of the system after a failure. For stress testing to be successful, a system should display an appropriate error message while it is under extreme conditions. [2]