Performance Profiling

Tuesday, August 19th, 2014

The goal of this project was to conduct profiling of the performance behavior of a software product meant for the global Financial industry. As the intended software was going to be used in a high-profile, response-critical environment, the performance profiling of the software was carried out to understand the impact of varied loads on the throughput. Being experts in testing, OAKSYS was entrusted with this responsibility of evaluation. Stress testing, volume testing and concurrency testing were carried out.

Background

  • A web based financial product
  • ¬†High response time was expected due to global reach of services offered

 

General Performance profiling

  • Concurrency Testing: Concurrency testing seeks to validate the performance of an application with a given number of concurrent interactive users
  • Stress Testing: Stress testing seeks to validate the performance of an application when certain aspects of the application are stretched to their maximum limit
  • Throughput: Throughput testing seeks to validate number of transactions to be processed during a given period of time

 

Test Environment (Designed and setup by OAKSYS)

  • A Server with application Software loaded up and running in stimulated production time
  • An application Server
  • A web Server
  • A Server with database installed and connected to the application
  • A separate Server with Performance testing tool
  • A PC (client) with a typical client setting for simulating all the ‘X’ no of Virtual Users (VU) hitting the server from that of the client

 

Sample Test Cases

  • Measuring the Response time (at different transmission rates) with load varying from 100-1000 Virtual Users (VU) in increment of 100VU
  • Measuring VU load for performance degradation in response time
  • Scalability test for peak and off peak response time with incremental virtual user stimulation and incremental volume of Database size

 

Metrics collected

  • Hits per second
  • Hits¬† Time
  • Response Time
  • Throughput..
  • … and many more

 

Our Value Add

  • Determining test cases for testing the project goals
  • Usage of an appropriate Load testing tool for measuring performance characteristics
  • Designing test environment
  • Useful metric collection
  • Ownership of Performance tests