The process diagram below depicts the Performance Testing process in a clear and consice manner. It shows an end-to-end process that can be used for any load testing need.
Requirements Gathering and Tool Selection:
- Identify Load Test Requirements — What all needs to be load test?
- Identify Performance Objectives — What are the performance goals for your application? Example: number of concurrent connections and/or hits per second to expect against the Web site.
- Evaluate and Select Load Test Tool and Monitoring Tool — Evaluate the tool to find out which tool can provide the best ROI in terms of the above defined performance objectives, cost of the tool, expertise pool available.
Planning and Analysis:
- Design Load Test Plan
- Identify and Prioritize Scenarios
- Identify Load Test Monitors: System( like perfmon for windows) or Non System Monitors ( like Apache Web Server) [Note: Monitors are programs that keep a check on your system’s performance, For Ex: type perfmon in Start -> Run command and check for yourself! ]
- Design Load Test Framework
- Set Load Test Environment
- Design Scripting Guidelines
- Assign the scripts among team members
Scripting and Configuration:
- Test Script Development and Unit Testing
- Configuring Test Scripts and Test Groups
- Develop Load Test Automation Suite
- Design and Deploy Monitors
Execution, Monitoring and Reporting:
- Perform Preliminary Tests
- Perform Formal Test- Various Loads: Under various loads condition as agreed upon with the client.
- Monitor Server and Resources
- Analysis and Bottleneck Identification
- Defect tracking and Configuration Management
- Reporting and Closure