Challenges
The client operates a marketplace that connects consumers with professionals. Once consumers post their requirements, an AI-driven algorithm identifies suitable professionals for them. The selected professionals are verified by the admin, and only the verified professionals appear on the consumer’s dashboard.
Consumers can choose a professional based on their preferences and communicate with them directly. However, the platform has been experiencing several issues related to test automation and system performance.
Key challenges
- Integration with Azure Pipeline It was difficult to ensure that the automation suite would operate smoothly in the Azure DevOps pipeline, particularly when integrated with Katalon Studio or when tests are performed on a particular version of a Chrome Browser.
- Dynamic Element Interaction One has to be careful while managing dynamic web elements in Angular frameworks such as when you are building dynamic XPath expressions to interact with elements that keep changing according to test data.
- Email Verification Automation The necessity to manage links from SendGrid, along with the use of third-party email services like Outlook and Gmail, complicated the automation of the email verification process.
- Network Latency and Speed There were significant delays in script execution due to internet speed issues. Under high traffic conditions, this could turn into a real problem. To ensure consistency, it was necessary to test the scripts under various network conditions and execute different commands to wait for elements.
- Retesting After Deployments The platform requires a robust test automation strategy that automatically retests specific functionalities after each deployment. This process ensures that adding new code doesn't break the existing functionalities or introduce new issues.
- Reporting and Communication It was required to set up reporting mechanisms like Azure DevOps and Katalon Studio that automatically generate a detailed report after each test cycle and share it with clients.
- Continuous Enhancements An adaptive approach to automation testing helps continuously identify and incorporate new business scenarios into the test suite.
-
Tools
Selenium WebDriver • SendGrid • Katalon Test Studio • TestRail • CI/CD (Continuous Integration/Continuous Deployment) in Azure DevOps • Protractor • XPath
Solutions provided
Reduced Manual Effort
Manual testing is prone to errors, whereas automated testing is not. When test cases are executed automatically without continuous manual intervention, the rate of errors and the cost of labor are reduced, while the speed of testing increases significantly.
Faster Feedback Loop
A suite of tests is executed after every code deployment to identify bugs and verify that all functionalities are working properly. Speeding up the feedback loop allows for immediate reporting of issues, leading to faster bug resolution.
Consistent and Reliable Testing
Test automation ensures consistent and reliable testing across various environments and test cases. It also significantly minimizes the risks of human errors.
Detailed Test Reporting
After each test cycle, clients receive a detailed test report that includes the number of test cases indicating whether they passed or failed. The report provides a comprehensive breakdown of the test execution and is available in both PDF and HTML formats.
Lower Maintenance Costs
The costs of testing decrease when they are automated as they can be implemented repeatedly after every code change without the need to rewrite or re-execute them manually.
Regression Testing
To ensure that new code changes do not negatively affect existing project functionalities, regression testing is automated.
Improved Efficiency
To enhance the project quality, new business test scenarios are continuously added to the test suite. This practice also improves the efficiency of future test cycles.
Results
Enhanced Business Process Performance
- Efficient reuse of existing processes
- Reduced time to transmit data from one process to another.
- Increased process throughput
- Consistent output quality
- Predictable process costs
Decrease Costs
- Reduced redundancy and asset duplication across the enterprise.
- Less dependency on external software service providers for customization and integration.
- Low maintenance costs.