Welcome To User Friendly Software Technical concepts

This Blog contains information of various technical concepts,The concepts are precise,informative with examples.visitors can easily understand the concepts of different technical related subjects like software Testing concepts , practice questions on sql And JMeter(Open source automation tool ) for Performance testing of an web application and about selenium tool used for functional testing of an web application

Wednesday, August 11, 2010

Performance Testing(Load,stress,volume ,soak, spike,scalability)


Performance testing:

Performance testing of an application / system is basically the process of
understanding how the application and its operating environment behave at
various user loads.
In general, it is performed by simulating virtual users to determine / validate the
scalability, availability, robustness, hardware & software resource utilization of the
application thus ideally paving the way for effective capacity planning of the system for
future usage. One of the main objectives of performance testing is to help maintain the
system with low latency, high throughput, and low utilization.

Testing the stability and the response time of an application by
applying  different loads is called performance Testing

Stability:Ability to withstand a designed numbers of users.
Response Time:Time taken to run the program,send the request
                and receive the response.This should be
                minimum when any application runs.

If 1500 users access at a time and due to load the system
may getcrashed then it has poor stability. If it is not gets
crashed thencheck the response time.Response Time should
be low.



Need for Performance Testing
Performance Testing sets the ‘best possible’ performance expectation under
a given configuration of infrastructure.
It also highlights early in the testing process if changes need to be made before a
pplication goes into production.

Types  of Performance Testing:
Load Testing:A Load test is usually conducted to understand the
                Behavior of an application under a specific
expected Load.

"Testing the stability and response time of an application by
applying loadin which it is equal to or less than designed numbers 
of usersperforming a specific operation no of transactions within the
set duration".

Stress Testing:







Stress Testing:
This testing is normally used to break the application.Double the
no of usersadded to the application and test is run again until
the application break down.
This is done to determine the application robustness in the times of
extreme loads and helps application administrator to determine if the
application willperform sufficiently if the current load goes above the
expected load.

Example:If it is designed for 100 users and configuration 1ghz
processor with speed 1ghz Rom,Reduce the network the configuration
               and keep the numbers of users constant.


Volume Testing:Testing the stability and response time of an application
                            by transferring or processing huge volume
of data.

Soak Testing:Test the stability and response time of an application
              of an application by applying Load continuouslyfor particular
period of time.
It is also  known as  endurance Testing

For Example : Test the application for 72hrs(3days),96hrs(4 days)
and 120hrs(5days).If it works well for 3 days thenwe can  ensure for
1 year it will work fine.

spike testing:It is done by spiking the number of users
 (Increasing or changing the load) and understanding the behavior
of the application whether  it will go down or will it be able to
handle dramatics(sudden) changes in load.

Scalability Testing: It is Testing of software application for
measuringits capability to scale out(There will besome standards
if measures beyond that its scale out)in terms of any of its non
functional capabilitieslike user load supported the number of
transactions,and the data volume.

No comments:

Post a Comment

You Can Post Your Comment Here