How our application is performing is a very core question in software development. In this post we will have a basic overview of performance testing, its various types and introduction of JMeter which is one of the most popular performance testing tool in industry. We will be using it to do performance testing of a web application.
Let’s learn a little bit about performance testing next:
Performance is usually related to “ how fast an application executes an operation “.
Performance testing is not only about measuring speed only. In particular performance is measured in terms of:
- Response Time (response time + processing time + network latency)
- Throughput (Nos. of transactions i.e. request/response per unit of time (e.g. million/sec).
- Reliability (i.e. no of errors / no. of requests)
- Scalability (i.e. response time + throughput + percentage of error)
Performance Requirement Examples
Few examples as follows:
- The average/max response time should be 800 ms.
- The system shall be able to support 60 pages/second.
- The system shall be capable of supporting 1000 users per hour.
Performance Testing Process
Design and Build Tests
For this you have to know the application and its usage pattern e.g.
- how many product reviews are we expecting per hour or
- on average how many users will be browsing the product catalogue at any give time .
This knowledge will help in testing.
Prepare the Test Environment
Run the Tests
Analyze/Optimize the Results
Type of performance Tests
Performance tests evaluate an application under certain amount of load, but different type of tests generate the load in different ways:
- By increasing the number of users that access the app same time.
- By increasing the number of requests that application has to handle…