When it comes to performance testing, it is important to collect the right metrics to determine if the system is going to perform in the correct environment.
In this article we will be exploring which are the key performance metrics to collect.
Response Time:
- This metric calculates the total time between the sending of the request and receiving the response.
- This is probably the most important metric when performance testing.
- The faster the response time the better the performance will be.
- Within the ‘Loadrunner’ testing tool it collects 4 types of response times.
These are as follows:
- Min – this is lowest response time that was recorded for a transaction.
- Max – this is the maximum response time that was recorded for a transaction.
- Average – this is the average response time for a transaction.
- 90th Percentile – this is the maximum response time. 90% of a transaction achieved.
- In other words, 90% of the transaction achieved this time or below.
CPU Utilisation:
- The time in which CPU needs to process requests.
- Performance problems can result when high CPU utilisation occurs, therefore the monitoring of CPU utilisation is a critical aspect of enhancing performance, it should be below 80% to ensure effective performance.
Concurrent Users:
- The number of users using the application at any one time has an impact on the performance.
- The concurrent user metric is the most common measure of load — how many active users at any point.
Throughput:
- The throughput rate is measured by kilobytes per second, it shows the amount of bandwidth used during the performance test.
- For instance, the throughput points to the rate at which the network or a computer receives the request per second.
Transactions Passed/Failed:
- A measurement of the total number of successful or unsuccessful transaction requests.
- Being able to ascertain the number of transactions that have passed or failed during performance testing is useful.
- For example, the transaction’s passed or failed metrics help in calculating the total number of successful and unsuccessful requests.
- The higher the number of successful transactions the better the performance will be.
Memory Utilisation:
- The memory usage metric determines the amount of memory that is required to process a request.
- The memory utilisation metric gives information about the amount of memory used during execution and the free space available.
Error rate:
- Errors can occur due to connection timeouts, broken connections, or refusals.
- The Error Rate calculation is a percentage of the requests resulting in errors compared to all requests.
- These errors usually occur when the load exceeds capacity.
Connections per Second:
- The connection per second metric during performance testing gives information about the Transmission Control Protocol/Internet protocol (TCP/IP) connections that are opened and closed every second.
- If the number of connections per second is less than the hit per second, it indicates an effective performance.
Wait time (Latency):
- Also known as ‘average latency,’ this tells developers how long it takes to receive the first byte after a request is sent.
- The latency metric helps in indicating the time taken for the first response.
In conclusion, this is not an exhaustive list, but it outlines the key metrics that should be collected when performing a performance test.