Performance Testing is being performed to measure smoothness and readiness of the application. While creating an application the vital factors should be kept in mind are as follows
- Speed of the application at any given condition
- Response time of the application
- How much resources being used by the application
- How stable is the application at given time
- Throughput of the application
- For web application times spent in making HTTP calls at server and client etc.
Performance Testing is type of testing that test application on above listed criteria.
Performance Testing measures performance of the application. After measuring performance of the application it sets the base line for further testing. Performance testing is very important since cooperate prestige of the application or decision on the final release of application based on the analysis of the results produced by this test. Performance testing does not find any defect in the application. Often, we perform Performance testing on a stable system.
Performance Test finds performance issue in the
- Database access
- Network latency like time spent on the network
- Time spent on reading or writing files on the disc
- Time spent on making HTTP calls etc.
So we can summarize Performance testing
Load Testing determines user experience when application is under load. In Load Testing, we test application with maximum number of users or with the expected number of users in the production environment.
Load Testing determines upper limit of the application. Load testing simulates expected number of users from the production environment and tests the application with that number of users. When we exceed number of users to test the application much beyond expected number of users from production environment then we call testing as STRESS TESTING. In majority of the time we consider Stress Testing as Load Testing.
Purpose of Load Testing is to find defect in the application when application is running under maximum load. Some of the defects could be as follows
- Memory leak
- Buffer Overflow
- Server failure
- Network failure
- Input devices reading failure
- Writing on output device failure etc.
We can summarize that Load Testing tests application behavior and sustainability with the maximum number of user inputs.