Performance Testing is used to determine the speed or effectiveness of a computer, network, software program or device. There are different types of testing that can be included in performance testing. All these are explained below:
1) Stress Testing :
Testing conducted to evaluate a system or component at or beyond the limits of its specified requirements to determine the load under which it fails and how. A graceful degradation under load leading to non-catastrophic failure is the desired result.
In other words, it breaks the system under test by overwhelming its resources or by taking resources away from it (in which case it is sometimes called negative testing). The main purpose is to make sure that the system fails and recovers gracefully -- this quality is known as recoverability.
2) Load Testing :
It constantly increasing the load on the system via automated tools. For a Web application, the load is defined in terms of concurrent users or HTTP connections. The term "load testing" is usually defined as the process of exercising the system under test by feeding it the largest tasks it can operate with. Volume testing, or longevity/Endurance testing are subsets of Load testing. Load testing is sometimes called volume testing, or longevity/Endurance testing.
Goals of Load Testing (In short):
-Expose bugs that do not surface in cursory testing, such as memory management bugs, memory leaks, buffer overflows, etc.
-Ensure that the application meets the performance baseline established during performance testing. This is done by running regression tests against the application at a specified maximum load.
Examples of longevity/endurance testing:
-Testing a client-server application by running the client in a loop against the server over an extended period of time
3) Spike Testing :
A performance test focused on determining or validating performance characteristics of the product under test when subjected to workload models and load volumes that repeatedly increase beyond anticipated production operations for short periods of time. Spike testing is a subset of stress testing
4) Soak Testing :
It involves testing a system with a significant load extended over a significant period of time, to discover how the system behaves under sustained use. For example, in software testing, a system may behave exactly as expected when tested for 1 hour. However, when it is tested for 3 hours, problems such as memory leaks cause the system to fail or behave randomly.
5) Volume Testing :
Volume testing refers to testing a software application for a certain data volume. This volume can in generic terms be the database size or it could also be the size of an interface file that is the subject of volume testing. It is a subset of Load testing.
Examples of volume testing:-
-Testing a word processor by editing a very large document
-Testing a printer by sending it a very large job
-Testing a mail server with thousands of users mailboxes
-a specific case of volume testing is zero-volume testing, where the system is fed empty tasks,
6) Concurrency Testing :
Difference between QTP and Winrunner
15 years ago
No comments:
Post a Comment