Project Overview
Chiltern Railways is a train operating company in the UK, providing services on the Chiltern Main Line from London Marylebone to Birmingham Snow Hill, and Aylesbury via Amersham. The company prides itself on its high standards of customer service, with a focus on providing a comfortable and reliable travel experience. Chiltern Railways also places importance on sustainability, with efforts to reduce its carbon footprint and contribute to environmental initiatives.
Challenges
- The product was in a need of a comprehensive solution that would enable them to conduct compatibility, usability, and performance testing for both their website and mobile applications. They were also interested in incorporating automation testing to improve their testing processes.
- The project required a dedicated QA team that could establish a smooth QA process with minimal supervision and meet the project deadlines. The team was expected to have excellent communication skills to collaborate with other teams, identify and resolve any bottlenecks, and ensure that the QA process is integrated into the development process. Additionally, the team was expected to be proactive in identifying and suggesting improvements to the QA process to ensure a high-quality product.
- Continuous testing was needed to ensure that the app and website were regularly tested to prevent bugs as it was a complex system comprising of various microservices.
- Initially the app and website had various minor bugs and problems, which needed extensive testing around every functionality to weed out the underlying issues.
- As the app and website may interact with various third-party systems and services like SilverRail. As SilverRail, maintaining data accuracy within the app becomes crucial. SilverRail provides essential functionalities like journey planning, ticket scheduling, ticket issuance, and payment fulfillment. Hence, it was imperative to ensure the correctness and reliability of the data integrated into the app.
Solution & Strategy
- Our team diligently reviewed and analyzed the project requirements to ensure a comprehensive understanding of the testing needs. We carefully examined Jira stories and Zeplin designs to identify the scope of testing and prioritize testing efforts. This approach allowed us to provide a more focused testing strategy and ensure that all aspects of the project were thoroughly tested. By doing so, we were able to deliver a high-quality product that met all client requirements.
- Based on this analysis, we developed a test plan that outlined the testing approach, timelines, test cases, and test environments. We created test cases based on functional specifications and requirements and documented expected results. We utilized a combination of manual and automated testing to execute tests based on the test plan, depending on the complexity of the application. If we found any defects during testing, we reported them promptly to the development team for quick resolution.
- In a highly collaborative manner, we established a channel to thoroughly test the API, ensuring that the apps received accurate data regarding train journeys and prices. We focusd the testing of the data given by the SilverRail in the app. We also placed great emphasis on verifying the proper functionality of the payment gateways, ensuring they met the highest standards and worked flawlessly. By adopting a meticulous approach to testing, we ensured that users had a seamless experience when accessing train information, making bookings, and completing payments.
- Generated test reports that provided a summary of testing activities, including the test cases executed, the defects found, and the test results. Also we track and manage defects throughout the testing cycle, from discovery to resolution.
- Automated testing scenarios were implemented for both the web and mobile applications using Cypress for the web application and Appium for the mobile applications. Additionally, we ensured that the smoke and regression test suites were integrated into the CI/CD pipeline to reduce the need for manual work and improve the testing process.
- Ensured clear and timely communication with the development team, project stakeholders, and other relevant parties throughout the testing process to resolve any issues or bottlenecks.
Conclusion
- QA team successfully fulfilled Arriva’s requirements by providing a thorough and comprehensive testing approach that covered all aspects of the project. The team developed a test plan based on functional specifications and requirements and utilized a combination of manual and automated testing to execute tests and report any defects promptly. They also generated test reports that provided a summary of testing activities and tracked and managed defects throughout the testing cycle.
- The team’s excellent communication skills allowed them to collaborate effectively with other teams, identify and resolve bottlenecks, and integrate the QA process into the development process. They also suggested improvements to the QA process to ensure a high-quality product.
- Finally, the team implemented automated testing scenarios for the web and mobile applications using Cypress and Appium, respectively. They also ensured that the smoke and regression test suites were integrated into the CI/CD pipeline, reducing the need for manual work and improving the testing process. Clear and timely communication with the development team and project stakeholders throughout the testing process ensured a successful outcome for the project.