Monday, October 26, 2009

Performance Testing Process



Phase 1 – Requirements Study

The objective of this phase is to understand the performance test requirements, Hardware &Software components and Usage Model.

It is important to understand as accurately and as objectively as possible the nature of load that must be generated. Following are the important performance test requirement that needs to be captured during this phase.

• Response Time
• Transactions Per Second
• Hits Per Second
• Workload
• Number of con current users
• Volume of data
• Data growth rate
• Resource usage
• Hardware and Software configurations

Phase 2 – Test Plan

The following configuration information will be identified as part of performance testing environment requirement identification.

Hardware Platform

• Server Machines
• Processors
• Memory
• Disk Storage
• Load Machines configuration
• Network configuration

Software Configuration

• Operating System
• Server Software
• Client Machine Software
• Applications


Phase 3 – Test Design

During the test design period the following activities will be carried out:
• Scenario design
• Detailed test execution plan
• Dedicated test environment setup
• Script Recording/ Programming
• Script Customization (Delay, Checkpoints, Synchronizations points)
• Data Generation
• Parameterization/ Data pooling


Phase 4 –Scripting

• Browse through the application and record the transactions with the tool
• Parameterization, Error Checks and Validations
• Run the script for single user for checking the validity of scripts


Phase 5 – Test Execution
The test execution will follow the various types of test as identified in the test plan. All the scenarios identified will be executed. Virtual user loads are simulated based on the usage pattern and load levels applied as stated in the performance test strategy.

The following artifacts will be produced during test execution period:
• Test logs
• Test Result


Phase 6 – Test Analysis

• Analyzing the run results and preparation of preliminary report.


Phase 7 – Preparation of Reports

The test logs and results generated are analyzed based on Performance under various load, Transaction/second, database throughput, Network throughput, Think time, Network delay, Resource usage, Transaction Distribution and Data handling.

Manual and automated results analysis methods can be used for performance results analysis.

The following performance test reports/ graphs can be generated as part of performance testing:-

• Transaction Response time
• Transactions per Second
• Transaction Summary graph
• Transaction performance Summary graph
• Transaction Response graph – Under load graph
• Virtual user Summary graph
• Error Statistics graph
• Hits per second graph
• Throughput graph
• Down load per second graph
• Based on the Performance report analysis, suggestions on improvement or tuning will be provided to the design team:
• Performance improvements to application software, middleware, database organization.
• Changes to server system parameters.
• Upgrades to client or server hardware, network capacity or routing.

3 comments: