Tuesday, 8 April 2014

Performance Testing Life Cycle

What is Performance Testing?

Performance Testing is a process of evaluating system’s behavior under various extreme conditions. The main intent in Performance testing is monitoring and improving key performance indicators such as response time, throughput, memory, CPU utilization etc.
There are three objectives (three S) of Performance testing to observe and evaluate; Speed, Scalability and Stability.
Performance testing evaluates the system. It identifies the bottleneck and critical issues by implementing various workload models.
When to start Performance Testing?
Performance Testing starts parallel with Software Development Life Cycle (SDLC). NFR elicitation happens parallel with System Requirement Specification (SRS).
Now we will see the phases of Performance Testing Life Cycle (PTLC).
  1. Non-Functional Requirements Elicitation and Analysis
  2. Performance Test Strategy
  3. Performance Test Design
  4. Performance Test Execution
  5. Performance Test Result Analysis
  6. Benchmarks and Recommendations
Performance Testing Life Cycle - QAInsights

1.     Non-Functional Requirements Elicitation and Analysis
Understanding non-functional requirement is the inception and most critical phase in PTLC.
Entry Criteria
  • Application Under Test (AUT) Architecture
  • Non-Functional Requirement Questionnaire
Tasks
  • Understanding AUT architecture
  • Identification of critical scenarios and understanding
  • Understanding Interface details
  • Growth pattern
Exit Criteria
  • Client signed-off NFR document
 2.     Performance Test Strategy
This phase defined how to approach Performance Testing for the identified critical scenarios. Following are to be addressed during this phase.
  1. What kind of performance testing?
  2. Performance tool selection
  3. Hardware and software environment set up
Entry Criteria
  • Signed-off NFR document
Activities
  • Prepare the Test Strategy and Review
  • Data set up
  • Defining in-scope and out-scope
  • SLA
  • Workload Model
  • Prepare Risks and Mitigation and Review
Exit Criteria
  • Baselined Performance Test Strategy doc
 3.     Performance Test Design
This phase involves with the script generation using identified testing tool in a dedicated environment. All the script enhancements should be done and unit tested.
Entry Criteria
  • Baselined Test Strategy
  • Test Environment
  • Test Data
Activities
  • Test Scripting
  • Data Parameterization
  • Correlation
  • Designing the action and transactions
  • Unit Testing
Exit Criteria
  • Unit tested performance scripts
 4.     Performance Test Execution
This phase involves dedicated to the test engineers who design scenarios based on identified workload and load the system with concurrent virtual users (VUsers).
Entry Criteria
  • Baselined Test scripts
Activities
  • Designing the scenarios
  • Loading the test script
  • Test script execution
  • Monitoring the execution
  • Collecting the logs
Exit Criteria
  • Test script execution log files
 5.     Performance Test Result Analysis
The collected log files are analyzed and reviewed by the experienced test engineers. Tuning recommendation will be given if any conflicts identified.
Entry Criteria
  • Collected log files
Activities
  • Create graphs and charts
  • Correlating various graphs and charts
  • Prepare detailed test report
  • Test report analysis and review
  • Tuning recommendation
Exit Criteria
  • Performance Analysis Report
 6. Benchmark and Recommendations
This is the last phase in PTLC which involves benchmarking and providing recommendation to the client.
Entry Criteria
  • Performance Analysis Report
Activities
  • Comparing result with earlier execution results
  • Comparing with the benchmark standards
  • Validate with the NFR
  • Prepare Test Report presentation
Exit Criteria
  • Performance report reviewed and base lined
In next blog post, we will see how to select tool for Performance Testing. If you are enjoying our articles, please subscribe for our free weekly newsletter.

No comments:

Post a Comment