World leader in tools and industrial solutions, striving for innovation and positive impact.

Industrial solutions

Engagement Highlights - QA

  1. Delivered end-to-end systematic roadmap for performance testing. 
  2. Identified performance issues before the customer is impacted. Also, provided the resolution or recommendation for the same. 
  3. Improved application performance and efficiency at an early stage.  

Company Introduction

The company is a trusted provider of tools and innovative solutions essential for shaping the world around us. The company’s reach extends far beyond household names, encompassing engineered fastening systems and industrial solutions vital for automotive security, communication devices, and critical infrastructure development.

Challenges & Goals

The Neova team was asked to do performance testing for the APIs and Web applications.   

  1. Performance Testing Kickoff:To start with the testing activity, a roadmap was not clear on how and from where to kick off. 
  2. Extensive Load time: APIs transactions were taking a long time to load certain actions, but sometimes, the load time is more than 1 minute.
  3. Delayed Response Time: The program is taking too long to load and sometimes it crashes as it is not getting the response within the time limit.
  4. Poor Scalability: Issue with handling the anticipated number of user’s load.      
  5. Resource Utilization: In a short span of time the app consumes more memory and CPU utilization during execution. 

Solutions

After getting a clear understanding of the requirements and to address these challenges, Neova implemented a comprehensive strategy leveraging the following technologies:    

  1. Define Non-Functional requirements:Collected and understood the Nonfunctional requirements for the applications. Shared set of performance questionnaires to conclude the requirements. 
  2. Dedicated test environment: A dedicated performance environment is usually set up for a load and other types of tests, which should be as realistic as possible. This includes selecting an appropriate test system and network to conduct the test under realistic conditions as per the requirements.   
  3. Effort estimation creation:Based on scenario criticality and type of test to be performed, we have driven how much effort is required to complete end-to-end performance testing with an in-house estimation template framework. 
  4. Project and Test Plan creation: The project plan describes daily activity from the performance team and business side. It will provide insight into the pre-requisite that the performance team needs for the performance testing stages. The test plan describes in detail how the tests should be conducted, and which test cases should be examined. The test plan should also specify how the results will be recorded and evaluated. i.e., entry and exit criteria. 
  5. User action Scripting:Scripted in scope scenario which is selected for the performance testing. Here, we have used Gatling, Java, and Maven frameworks to customize and make the script robust. 
  6. Conduct the tests:Once the performance test environment is set up and the test plan is created, you begin the tests. We have conducted load, stress, endurance, and spike tests as the test must be conducted under controlled conditions to obtain reliable results. 
  7. Evaluate and document the result: Once the tests are completed, we have analyzed the result from the server and client side, and collected graphs showing the system’s performance metrics during the tests.
  8. Optimize and improve: Based on the results of the tests, weaknesses in performance can be identified and optimized. Some of them are as follows:
  • Adjusting configurations or adding hardware resources. 
  • The database was shared mode, so we have recommended using a dedicated database for a realistic result. 
  • Database tuning.  
  • The load should be equally balanced across the nodes. 
  • Subscription upgraded to fulfill the requirements.  
  • Analyzed thread and heap dump to minimize resource utilization from the application side.