Friday, March 16, 2012

Performance Testing and How to identify performance objectives?

Performance Testing:

Finding the application behavior with respective of

    |--Response Time

    |--Throughput

    |--CPU Utilization ..... (Above 3 values may change depending upon the Client requirement).

Before going to start Performance testing, performance tester required NFR(Non function requirement)/SLA( Service Level Agreement)/Performance Objectives,why we required because with out knowing objective nothing to do.

Ex: My teacher told "Go That District", this is meaning less. So teacher need to tell " GO Hyderabd". Then it is very easy to do this. So we required objectives.   what NFR/SLA document contains is Objectives.  

Below are the Objectives for Performance Testing.

 1. Number of users the application needs to support (Ex: 1000 users need to support)

 2. Response time (Ex:less than  8 sec for all pages)

 3.CPU Utilization (Ex: less than 80%)

 4. Memory Utilization (Ex: less than 80%).

Note:

1. We can call all above 4 as SCOPE of application

 2. Some time Functional test plan contains NFR details. Some times client/Manager will give separate NFR document.

3. NFR document contain performance related information and Security testing related  ..... e.t.c.

What is the Use of Doing Performance testing?

IRCTC is an application of Rail way Dep (organization) and Central govt is the client. If we want to build an application, organization required

--Developers

-- Administrators( DB and Application server administrator).

--Network administrators and

--Architects  majorly.

Finally end users(me,you ...etc) are using the applications. Here client( is earning the money because of using the application (IRCTC).

If application is opening after 20 min , no end user will use the application.This problem will solved by doing Performance testing before releasing the application to the product.This is main use of doing performance testing.

Other reasons are:

1. Finding development issues like
       a.  Memory leaks

       b.  Synchronization points

       c. Slow queries ....etc.


2.Administrator issues like

       a. High CPU Utilization

       b. High Memory Utilization

       c.  Connection pool issues

       d.  Socket issues and ...etc.


3. Architecture issues like

      a. Poor db design

      b.Poor software identifications .. etc.

When was performance testing starts?

Functional testing should over and Build should stable for doing performance testing.

No comments: