The client is a leading AI solution provider that offers cutting-edge solutions to customers globally.
They specialize in delivering artificial intelligence and machine learning-based services, and their solutions are designed to improve business operations, automate processes, and enhance customer experiences.
The client approached codvo.ai to enhance their automation testing framework for Cypress. The client's initial framework was designed in the default Mocha-chai framework, and they were facing several challenges due to the design of the code. The code was difficult to understand, not reusable, and upgrading and extending the framework was a challenge. The client wanted to reduce maintenance and operational efforts, improve review processes, and make the automation framework more accessible to all stakeholders.
The client's initial framework was designed using the Mocha-chai framework, which only a technical person could understand. The code was written in "describe" and "it" blocks, which made it difficult to understand for non-technical stakeholders. Due to the design of the code, the client was facing several challenges, including increased manual efforts (20-30% more effort), reduced reusability of the code, and limited upgradability and extendibility of the framework. Additionally, there were more maintenance and operational efforts required to maintain the framework.
To address the challenges faced by the client, we adopted a modular approach using the Behavior Driven Development (BDD) framework for Cypress automation. We first identified the common steps in the automation process and placed them in the helper's folder for reuse wherever required. We then developed feature files in human-readable form, making it easier for non-technical stakeholders to understand the automation results. We also used Cucumber BDD testing to improve collaboration between stakeholders and enhance the review process. Additionally, we added a custom report plugin to show dashboard reports, which helped to monitor and review results more efficiently. Finally, we used Allure Report to generate custom reports, making it easier to identify and address issues, and improve reporting. This approach not only reduced manual efforts and improved reusability but also enhanced the efficiency of the automation framework
We used JavaScript and NodeJS to develop the Cypress automation framework. We used Jenkins as a continuous integration and continuous delivery tool, Cypress.io for end-to-end testing, and Cucumber BDD testing to enhance collaboration between stakeholders. We also use Allure Report to generate custom reports and improve reporting.
Team members involved
Tools used
Days delivery
Increase in productivity
Our approach helped the client to reduce manual efforts by 60% and save approximately 4-5 hours of manual effort.