Our client for this project is a travel booking platform that allows users to book cheaper flights by taking advantage of the known loopholes within the travel industry. Customers primarily use the service via a web app, as well as mobile apps for iOS and Android, and a positive user experience is critical for making them return.
Challenge
Founded over a decade ago, the client’s company went from a small startup to one of the leading businesses in the travel industry. The product is available as a web application that is also compatible with mobile browsers, as well as native mobile apps for iOS and Android. Still, even though the company has been conquering the market for years with their increasingly popular product, there hasn’t been an established quality assurance procedure in place — testing was unsystematic, usually carried out by developers, and a significant amount of bugs were being found by the end users, which is the least desirable outcome for an up-and-coming solution.
Due to the limited attention paid to quality assurance for years since the product launched, and the absence of a comprehensive bug tracking system or project documentation, our team had to not just test the software, but also implement a reporting and documentation system from scratch. Moreover, the company did not follow any schedule for their releases, unveiling updates on a seemingly random basis, which also made the quality assurance process more difficult.
During the years of working on the project, we helped ensure the quality of 30+ versions of the three apps, each containing valuable updates and improvements. Depending on the scope of requirements, we performed the following types of testing:
- Functional testing
- UI/UX testing
- Compatibility testing
- Regression testing
- Localization testing
- Smoke testing
- Confirmation testing
- API testing
- Exploratory testing
It’s also worth noting that our team working on the project has remained the same throughout the entire collaboration, which means they are now ingrained in the development and delivery process and have even helped onboard new team members on the client’s side. Our team for this project included:
- 1 QA Team Lead
- 1 Manual QA
Through regular meetings and effective communication via Slack, our team can quickly react to changes in the application and developer requests, speeding up the release process and making sure the apps are quickly approved by the App Store and Google Play Store.
Solution
We typically start the work on a testing project with reviewing the documentation and existing test cases, but with no documentation or test cases to review, our team had to establish the testing process with nothing to base it upon. However, that is something we have plenty of experience with. After spending some time investigating the development process and existing bug management practices, we were able to build a thorough process for documenting bugs, communicating with two distributed development teams, and tracking the progress of the discovered issues with the software.
We introduced GitHub as a bug tracking system that could also be easily integrated into the overall development ecosystem used by the client. Before our team came on board of the project, the release schedule was somewhat chaotic, but our efficiency and speed allowed the client to speed up the release process and gain more confidence in the solution. We also built an effective communication procedure with the client’s development team, so
Technologies
- Postman
- TestFlight
- Android Studio
- GitHub