Satheesh Indiran

The 9th edition of the Global Testing Retreat 2024!

About Speaker

Satheesh Indiran

Performance and Accessibility Engineer
Cognizant Technology Solutions

I am a Dedicated Non-Functional tester with a strong background as a Performance and Accessibility Engineer at Cognizant with 4 years of experience. My skill set is enriched with profound knowledge in performance testing and Accessibility Testing (AT) across various sectors including insurance, retail, and map-based applications. Am a Smart India hackathon winner for the 2019( software edition) .I also bring to the table substantial industry experience in conducting comprehensive performance testing for web-based applications

Interactive Talk - Revolutionizing Performance Test Analysis – JMeter Meets MLP and GNN

The performance test result analysis using JMeter is traditionally done manually by human intervention. Though we have few models or methodologies to analyze the test results, the traditional analysis methods are not efficient enough. The traditional analysis methods do face various difficulties as we had to deal with lot of numbers and graphs with the knowledge of previous results. Results in JMeter are either presented in the summary report listener or an aggregate report listener in the form of CSV which contains only the numerical data of the test and a separate graph result needs to be added to view the graphical results listener before the start of the test. With help of these the result analysis is taken over manually or other methodologies once the test is over which is time consuming.

To overcome these difficulties, we are proposing an efficient result analysis model with the help of Multilayer Perceptron (MLP) and Graph Neural Networks (GNN) in a single model. This model consists of 2 models integrated onto to a single result analysis model. A HTML result file can be generated after each test executed if the test executed in non-Gui mode or else it needs to be generated with the CSV result file manually which can also be automated. The generated HTML result file or the CSV result file can be the input file to the result analysis model. Performance results basically contains both the numerical data and graphical data, both of which plays a key role in the result analysis. The numerical data contains the parameters such as Minimum, Maximum, Average, 90th percentile and throughput which are the most important parameters in the results and the graphical data contains various graphs such as average response time, hits per sec, active threads over time, response time graph, results summary etc.

The numerical data is passed on to the MLP (Multilayer Perceptron) for the analysis, MLP is nothing but a combination of neural networks which contains an input layer, an output layer and one or more hidden layer, where each layer contains a set of perception elements known as neurons. The numerical data analysis model gives the analysis of the Minimum, Maximum, Average, 90th percentile, throughput, and other important metrics. After analyzing and comparing the results with the previous test results the model recommends the transactions or the requests that needs to be looked upon or optimized. The core principle behind this model lies in backpropagation, a key algorithm used to train this network. During backpropagation, the network adjusts its weights and biases by propagating the error backwards from the output layer to the input layer. This iterative process fine-tunes the model’s parameters, enabling it to make more accurate predictions over time. This gives the analysis of the numerical data as the output from the numerical data analysis model.

The graphical data is passed to one of the Graph Neural Networks (GNN), GNN is a Convolutional

Neural Networks (CNNs) which uses graph embedding and are used in predicting graphical data. The Graphical analysis model presents the analysis of the average response time, hits per sec, active threads over time, response time graph, results summary etc. The graphical model presents the point at which the response time has peaked or spiked during the test and the analysis of how the system behaved during the test. The graphs are analyzed, and the model recommends the changes that needs to be done  Abstract 

for the next test. This Model is built on Graph Neural Network which will have three main focuses Tasks focusing on nodes, tasks focusing on edges and tasks focusing on both nodes and edges. The input graph structure is converted into graph embedding, allowing us to maintain information on nodes, edges, and global context. Which builds a neural graph on the activity and the objects passing between graph nodes. From this the graphical nodes provides the analysis of the graphs, where systems CPU or memory have spiked or the increase in response time and other issues for the higher response is analyzed and the recommendation for scaling the system is presented based on the previous tests.

Moreover, we propose a two-stage training strategy to optimize the graphical analysis model. A progressive supervised learning is first adopted to obtain an initial prediction for the activity and the objects. Then, the initial predictions are refined by using a policy-gradient method to directly optimize the non-differentiable value-all metric. We would conduct in-depth tests using a bigger dataset which has to be created to validate the accuracy of our approach for result analysis This gives an optimized analysis of the graphical data as an output.

Both the models (Numerical data analysis model and graphical analysis model) are integrated on to a single Result analysis model which gives us the complete result analysis of the performance test results the results are transferred on to excel for documentation purpose and the results & the recommendations are presented using various dashboards describing the parameters once the test is completed. This eliminates human intervention for analysis of the performance test results and this gives a quicker result analysis model which is a completely automated process from starting the test and till the result generation, this helps the developers to identify the performance bottlenecks and their recommendations in a quick manner.

 

Proud to Be Speaking at #ATAGTR2024

Scroll to Top