Friday, December 18, 2015

Average Load Test

The main objective of Average load test is to test the Performance of the application at an expected average user load in production environment. 

During this test we see whether Transaction Response Time is within the service level agreement with the stakeholders of the application or not.

Friday, December 11, 2015

Types of Performance Tests

Load Test
Load test is the most common performance test which is conducted by everyone. A load test is usually conducted to understand the behaviour of the system under expected load. This load can be the expected concurrent number of users on the application performing a specific number of transactions for a set duration. This test will give out the transaction response time details of all the business flows which are included in performance test. Application server, Web server and database servers are monitored during the test, so that we can identify if there are any bottlenecks in the application.

Stress Test
Stress test or breakpoint test. We normally conduct this test to understand scalability of the system. This kind of test is done to determine the system's robustness in terms of extreme load and helps application administrators to determine if the system will perform sufficiently if the current load goes well above the expected maximum.

Soak Test
Soak test or endurance test, is conducted to gauge if application can sustain the expected load for longer test duration. This test helps us to identify if application has memory leaks. This test also helps us to identify if application performance is as per the exceptions over a long period of time. It essentially involves applying a significant load to a system for an extended, significant period of time. The goal is to discover how the system behaves under sustained use.

Spike Test
Spike test is conducted to observe how system will perform on sudden increase in load. This can be achieved by suddenly increasing a large number of users, and observing the behaviour of the system. The goal is to determine whether performance will suffer, the system will fail, or it will be able to handle dramatic changes in load.

Volume Test
Volume test is conducted to measure performance of the application when large number of data is inserted in the database.

Why Performance Testing is Required ?

Performance testing is done to measure speed, stability and scalability of an application. More importantly, performance testing tells us what needs to be improved before the product goes to market. Without performance testing, software more prone to issues such as: slowness in the application while several users use it simultaneously, poor usability, stability of the application. Performance testing will determine whether or not the software meets speed, scalability and stability requirements under expected workloads. Applications sent to market with poor performance metrics due to non existent or poor performance testing are likely to gain a bad reputation and fail to meet expected sales goals.

We should not limit our self to performance testing of newly created application. Ideally we should conduct performance testing of each and every application regardless of that if it is newly created, created before or it is off the shelf product of other company.

What is Performance Testing ?

Performance testing is the process of determining the effectiveness of a server, network and software program. It helps us to measure Qualitative attributes such as reliability, scalability and interoperability of an application. Performance testing is often done in a controlled manner by using tools. World wide used tool for performance testing is HP Load Runner.