Monday 25 May 2015

Important phases of the performance testing

Phase-I: Analyzing Performance Requirements                                     
The below activities are being performed as part of this phase from the performance testing perspective.
Activities:
  1.  Kick Off meetings with QA, Infra team, Network team, DBAs, Development, Architecture and Customer.
  2. Perform Initial analysis to identify understand project status, schedule and existing testing practices.
  3. Understand product engineering and support organization structure and processes
  4. Complete Performance questionnaire
  5. Identify goals of performance testing
  6. Research User profiles
  7. Study system under test and understand Application Architecture & Network topology
  8. Prepare Understanding Document
  9. Identify Monitoring requirements
  10. Create performance test requirements document
  11. Identify Type of test needed
  12. Identify test scenarios
  13. If required perform Tool comparison analysis, Tool recommendation & procurement
  14. Prepare Test Strategy
  15. Review & Signoff Test strategy
  16. Standard required information for performance testing includes:
    1.  Anticipated # of total users
    2.  Anticipated # of concurrent users
    3. Anticipated volume of transactions
    4. Application, system, & network architecture
    5.  User & Transaction response time requirements
    6. Test Type Requirements (Load, Stress, Volume, Burn-in, Fail Over, etc)
 Phase-II: Performance Planning
Below activates are being performed as part of the Planning phase from the performance testing perspective.
Activities:
  1. Create Performance Test Plan & Review and approval of Test Plan
  2. Prepare estimation document of team size, and effort.
  3. Establish logistics/team formation
  4.  Define roles and responsibilities
  5.  Identify key business process and Business Process Selection
  6. Prepare Workflow document
  7. Identify test data requirements
  8. Protocol Identification
  9. Conduct POC if required and Publish POC results, if POC is undertaken:
    1. A prototype application should be available at this time to evaluate and create a proof of concept that validates that performance testing CAN be accomplished on the system with the tools on hand. At this stage there should be a “go/no-go” decision made for the types of performance tests to use. This stage of testing does not require production grade hardware or the complete system as it is for POC.
  10.  Ensure Load generators capacity for number of virtual users
 Phase-III: Performance Script Design
Below activities are being performed as part of this phase from the performance testing perspective.
Activities:
  1.  System access
    1. All necessary security access points must be established prior to script recording as this is a manual process to begin with. This includes NT/UNIX/Mainframe system access, as well as application user accounts numbered as high as the anticipated total # of system users. (100 users == 100 test user ID’s).
  2.  Develop test scripts according to workflow document using identified test tool
  3. Ensure  scripting standards are followed
  4. Conduct Script review
  5. Enhance scripts and plan script migration if required
  6. Ensure volume of test data
  7. Test Environment set up 
    1. The Test Environment must be completed prior to executing any performance tests. This includes having the necessary hardware and software implemented in a simulation of what the production system will entail. Production grade hardware should be used to accurately size the application.
  8. Conduct dry run of all test scripts
  9. Publish dry run test results
  10. Prepare script delivery document
  11. Review execution schedule and scenarios
Phase-IV: Performance Test Execution
Below activates are being performed as part of this phase from the performance testing perspective.
Activities:
  1.  Generate and Integrate test data into scripts 
  2.  Build scenario according to work load model
  3. set up Run time settings
  4. Setup performance counters (Monitors)
  5. Execute shakedown test
  6. Ensure test readiness from all teams involved with the project
  7. Run Test Scenarios 
  8. Monitor high level system performance counters
  9. Capture metrics/ Log test session information
 The following counters need to be monitored while running individual performance tests for various transactions:
  • Processor Performance Counters
  • Process Performance Counters
  • Physical Disk Performance Counters
  • Memory Performance Counters
  • Network Performance Counters
  • System Performance Counters
Phase-V: Performance Results Analysis
The test results are reviewed and analyzed for any bottlenecks in the application by a team of experts for the various Hardware platforms, Operating systems, Databases and Software design.
Activities:
  1.  Create performance test results report
  2.  Publish report and Maintain error log 
  3. Review Performance test results with Project team
  4. Verify results with requirements
  5. Analyze reports for bottlenecks and recommend performance  improvement solutions
  6. Support performance tuning activity
  7. Re run Test scenarios
  8. Re run test scenarios until requirements are satisfied
  9. Project Closure

No comments:

Post a Comment