Performance Testing — Web Apps

Arunkumar Krishnan
2 min readSep 29, 2018

--

What is performance testing?

  • Type: Non-Functional testing
  • What is tested?: System’s behaviour under extreme conditions
  • Objective: 3 S’s — Speed, Scalability, Stability
Image src: https://www.multidots.com/services/performance-testing/

How it is done?

It is typically done with some variations on the load (no.of concurrent users hitting system under test). Each of them have a defined objective.

Image source: https://www.polteq.com/testdienst/performance-testen/attachment/metrics/
  1. Load Testing: Check for bottlenecks under extreme case
  2. Stress Testing: Evaluate the breaking point of the application
  3. Endurance Testing: Test to handle the load for a longer duration
  4. Spike Testing: Test to handle sudden increase in the load

Few other performance tests under data, scalability parameters are done as

  1. Volume testing: System tested under varying data volumes
  2. Scalability Testing: How application scales with increasing load

Performance parameters monitored in

  • Response time
  • Throughput
  • Error rates
  • Bandwidth
  • Resource Utilisation: CPU, Memory

Performance Testing Procedure

  1. Objective: It is important to define the business objectives (typically no.of concurrent users and resource limitations/budget)
  2. Input: Heterogeneous user requests simulating realtime with data
  3. Output: Performance parameters to be monitored and fixing acceptance
  4. Configure testing: Capture and/or generated load generations scripts
  5. Run: Use configured scripts and execute performance test
  6. Record: Capture results from step 5
  7. Tune System: Check the output and Fix required issues.
  8. Repeat step 5 until output is acceptable

Common issues fixed in step 7

Most common items being fixed are

  • Bottlenecks — Some blockage in data flow path
  • Poor scalability — caused by concurrent tasks
  • Software configuration issues
  • Insufficient hardware resources

--

--

No responses yet