Due to the absence of an in-house testing team, the client sought both manual and automation testers to evaluate this application. While customized versions of the application were tailored for specific regions based on user requirements, the core features remained consistent. Implementing automation using the fundamental framework would enable the efficient testing of various customized versions of the application, with minor modifications applied to the shared framework. This led the client to seek independent software testing companies with software testers possessing substantial experience and skill in automation.
API Testing and UI Testing both needed to be conducted. For API Testing, the tool "Postman" was utilized which has its own limitations and offers several built-in options that they were compelled to use. Initially, there were only 5 customized versions to manage. This prompted the client to configure Postman for these 5 projects, which was manageable. As the number of customized versions of the application increased significantly, the client faced challenges in managing configurations using Postman. Consequently, the transition to a more robust framework that allows logic-based coding became necessary. This could replace API activities accomplished through coding, enabling both UI Testing and API Testing to be conducted using a common framework.
No documents detailing the functionalities and operations of the application were available. As a result, sourcing knowledge related to various application functionalities and operations for the required team members proved challenging. This posed difficulties in providing training for new hires, whether they were software developers or software testers. They struggled to comprehend the application's functioning, as well as its different features and facilities.
To reduce manual intervention across various customized versions of the project, automation was implemented. A daily automation run was executed to perform End-to-end testing, encompassing validations to cover a broad range of workflow scenarios. This achieved a 70% completion rate within just one hour. Any failures encountered during this process were logged as defects. Concurrently, manual testing was conducted to uncover a higher number of bugs and subsequently report them. For enhanced efficiency and defect identification, the identical scripts were executed twice daily.
We consolidated our UI and API testing efforts into a unified framework called "Supertest." Within this framework, UI coding and API coding were amalgamated. The API validations that had been configured and maintained in Postman were systematically transformed into code, ready to be integrated into the Supertest framework. A comprehensive understanding of the logic behind each API validation was essential for its successful conversion into code and integration with Supertest. Transitioning UI-related test cases to the new framework was relatively straightforward, as they were already in a coded state. However, the challenge lay in incorporating new test cases and validations within the UI context. Through diligent coding, we managed to migrate approximately 4000 test cases, solely related to Postman validations, from Postman to the Supertest framework.
We meticulously documented all the functionalities and features offered by the application while concurrently conducting tests. Our diligent efforts were focused on discerning the various functionalities and features inherent within the application. To achieve this, we engaged in numerous discussions with software developers and officials from the client side and conducted extensive testing on the application. Furthermore, any issues or challenges that arose during the automation process underwent thorough root cause analysis, and the solutions were also documented. Our framework was also meticulously documented, providing a detailed guide for any new automation tester, offering a comprehensive understanding of the application's functionalities and features right from the initial stages.
By employing diligent coding, we successfully transferred around 4000 test cases exclusively focused on Postman validations from the Postman platform to the Supertest framework.
Automation combined with the innovative approach of integrating both UI and API testing into a unified framework increased testing speed many times.