The one necessary testing requirement for a product whether it is a mobile application or web application is performance testing. Speed, scalability, and stability are the factors which are analyzed in this performance testing. Speed is analyzed to know how fast the App responds to a user query. checking scalability let us know the maximum number of users that can be handled by the App. Stability testing helps to know if the app is keeping pace with varying loads. Performance testing is comprised of load testing, stress testing, and volume testing. Load testing is done to evaluate the response of the App for the normal load as well as peak load. Every client has an expected number of users for their product. Stress testing is carried out to determine if the app works properly or not after increasing the number of users whereas volume testing deals with the amount of data used by App. The ability of an App to deal with a huge amount of data is focused in this part of the volume testing.
Performance testing is done with Apache JMeter and blaze meter is particularly used for web applications. For web Apps, the scripts are recorded with blaze meter and are saved into a file which in turn is opened and run in Apache JMeter. In the case of a mobile App, the client provides us with API request and its response which can be further directly used with JMeter. In JMeter, a request is sent to the server by changing the number of threads to get the corresponding response. Virtualization can be implemented in JMeter to evaluate performance testing. JMeter 2 also supports the virtualization concept. The number of threads can be varied up to a maximum of 500 in GUI mode to test performance depending upon the client’s requirement. If the need of the client is more than 500 the testing is done in non-GUI mode with the help of command prompt. After getting started with JMeter an HTTP request can be given in which e can provide URL, part and variable. If it’s for API, an API request can also be provided whether it is in JSON format . Further two listeners can be added in JMeter after changing the thread. The results from these listeners can be in either in a tree format or obtained as a summary result which is in the table form. The summary form consists of details like average response time, latency, throughput, etc. If the requirement is more than 500 dashboard reports are created in non-GUI mode. Dashboard reports are created with the help of command prompt with the help of a small piece of code which goes like
“ Jmeter -n -t path of saved file -l path newly created CSV data -e -o path of dashboard report file”