Unit Testing Improved The ERP Software Code Dependability For A US-Based Technology Company
Expertise:
Manual Testing System Testing Regression Testing Unit Testing Integration Testing
Verticals:
Media & Entertainment
Technologies:
PostmanAzure DevOps
Client Overview
A business and data management firm in the US wanted to strengthen the code dependability of its ERP software. The client offers a business and project management platform for professionals who maintain swimming pools. As the client's testing partner, we helped to check the ERP application's workflow, analyze its behavior, and resolve the UI/UX issues in the product. Once the tested product was deployed, the client minimized app crashes and expanded its customer base. Business Needs
The client's business solution was robust, no doubt. However, the addition of new features made the software vulnerable to new errors. In addition, the workflow of the business management solution was dynamic - so it had to be tested continually for glitches. Besides, the client wanted to follow predictive maintenance schedules. Owing to that, it wanted to test its management software continually. Here are some of the action areas for which the client needed an experienced testing partner in its corner.- Checking the app workflow based on the always-evolving business needs
- Examining the app behavior whenever a new feature was added to the software
- Ironing out the issues that usually cropped up in the UI/UX of the software
Strategy & Solution
We became the first choice for being a testing partner for the client. It was because we are a software testing company with expertise-backed experience in testing a variety of assets: websites, web apps, mobile apps, standalone software, etc. Once we analyzed the project requirement of the client, our test leaders started preparing a comprehensive test strategy. The strategy divided the project into different test levels, which have to be performed to ensure the software is free of defects. Our test strategy primarily included three testing levels that could be categorized into system testing, integration testing, and unit testing. Besides, our testing strategy even included a combination of manual and automated testing.
Once the testing strategy was finalized, we formulated a team of testers, a dedicated project manager, and a lead tester. Moreover, the roles and responsibilities of every tester were formulated from the beginning of the project. After setting up the testing team for this project, our team understood the multiple environmental requirements of the project. Understanding these requirements has always been an integral part of our overall test strategies used in different projects. Getting a handle on the project's environment requirements will help us find out the operating systems that we will use during the testing project.
From the beginning, we decided which testing tools and frameworks we would use during the project. The suite of tools we used for testing this project included Azure DevOps Server and Postman. We used the Postman platform for testing all the APIs used in the software; likewise, we used Azure DevOps Server - which was formerly known as Team Foundation Server or TFS. Using Azure DevOps Server helped us centralize the repository of all the source codes belonging to different artifacts used in the software.
As testing any project is a risk-heavy endeavor, we took concrete steps to mitigate threats - including errors, software crashes, and other bugs. We minimized the risk quotient of the project by documenting all the probable risks that could occur during the testing phase. Documenting these risks enabled us to anticipate the occurrence of these risks or errors beforehand.
Moreover, we prepared an exhaustive test schedule where we planned which testing phase would take how much time. The schedule for this project even listed which tester would execute which test case associated with the software. The presence of such a detailed road map of all the testing phases helped us check whether each test case was executed at least one time. Since the project included adding new features to the business management software, we ensured that each feature worked properly. To that end, we carried out comprehensive regression testing phases. This phase involved checking the software thoroughly to identify bugs. Whenever a bug was discovered, our testing team debugged the same issue. To ensure that the fix worked as intended, our team retested the software against the same criterion.
Last, we even formed dedicated test groups to identify the areas in the software that shared the same functionality. We created different test groups based on test status reporting and collections, test priorities, test records maintenance, and requirements traceability matrix.
Our Testing Process
To get started with the testing of this project, we ensured that we followed a fixed process - a testing life cycle. For every QA and testing project we undertake, we follow a robust testing life cycle that has helped us develop strong visibility of multiple test schedules. In addition, our testing process helps testers view all the components that need to be tested. That way, the testers debugged the components individually and effectively. Here are the steps involved in the testing life cycle we followed.
Once the testing strategy was finalized, we formulated a team of testers, a dedicated project manager, and a lead tester. Moreover, the roles and responsibilities of every tester were formulated from the beginning of the project. After setting up the testing team for this project, our team understood the multiple environmental requirements of the project. Understanding these requirements has always been an integral part of our overall test strategies used in different projects. Getting a handle on the project's environment requirements will help us find out the operating systems that we will use during the testing project.
From the beginning, we decided which testing tools and frameworks we would use during the project. The suite of tools we used for testing this project included Azure DevOps Server and Postman. We used the Postman platform for testing all the APIs used in the software; likewise, we used Azure DevOps Server - which was formerly known as Team Foundation Server or TFS. Using Azure DevOps Server helped us centralize the repository of all the source codes belonging to different artifacts used in the software.
As testing any project is a risk-heavy endeavor, we took concrete steps to mitigate threats - including errors, software crashes, and other bugs. We minimized the risk quotient of the project by documenting all the probable risks that could occur during the testing phase. Documenting these risks enabled us to anticipate the occurrence of these risks or errors beforehand.
Moreover, we prepared an exhaustive test schedule where we planned which testing phase would take how much time. The schedule for this project even listed which tester would execute which test case associated with the software. The presence of such a detailed road map of all the testing phases helped us check whether each test case was executed at least one time. Since the project included adding new features to the business management software, we ensured that each feature worked properly. To that end, we carried out comprehensive regression testing phases. This phase involved checking the software thoroughly to identify bugs. Whenever a bug was discovered, our testing team debugged the same issue. To ensure that the fix worked as intended, our team retested the software against the same criterion.
Last, we even formed dedicated test groups to identify the areas in the software that shared the same functionality. We created different test groups based on test status reporting and collections, test priorities, test records maintenance, and requirements traceability matrix.
Our Testing Process
To get started with the testing of this project, we ensured that we followed a fixed process - a testing life cycle. For every QA and testing project we undertake, we follow a robust testing life cycle that has helped us develop strong visibility of multiple test schedules. In addition, our testing process helps testers view all the components that need to be tested. That way, the testers debugged the components individually and effectively. Here are the steps involved in the testing life cycle we followed.
- Held discovery sessions to gather and evaluate different project requirements
- Built a test strategy that comprised different testing phases
- Created different test-case designs to check all the functionalities and features of the web app
- Checked the test environment from end to end
- Deployed multiple test cases seamlessly
- Followed a robust test cycle closure that included predefined exit criteria
Business Outcomes
- The software did not lag or crash on different devices that ran on multiple operating systems.
- The errors reported earlier by the client went down after deploying the tested software.
- The number of sign-ups for the business management software went up after the tested software rolled out.
- The customers stored their business data on the software without any hitch, as its data storage capabilities were rechecked.
Client's Speak
I am happy with Flexisn's testing team. The testers and the project manager I was given were professional and took care of any bugs then and there, regardless of the fact that they worked in a different time zone.
Christopher Bartik
Texas, United States
Texas, United States
WANT TO START A PROJECT?
Let's collaborate and discover propositions that unlock business opportunities.