Quality Assurance for a Flight Booking Service

Maintaining the impeccable quality and outstanding usability of web and mobile applications used by thousands of people daily.

About project

Solution

Exploratory testing, Functional testing, UI/UX testing, Regression testing, API testing, Smoke testing, Confirmation testing, Compatibility testing, Localization testing

Technologies

Postman, TestFlight, Android Studio, GitHub

Country

US

Industry

Travel & Hospitality

Project Duration

3+ years

Team Composition

1 QA Team Lead

1 Manual QA

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.

Solutions

We typically start the work on a testing project by 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 examining the development process, cross-team communication, 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 there were little to no delays and misunderstandings that could potentially damage the project.

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.

Technologies

Manual testing is all about the ways that humans interact with the software, but the right selection of tools helps us achieve even more precision and transparency.

  • Postman
  • TestFlight
  • Android Studio
  • GitHub

Types of testing

Functional testing

Verifying the consistency of core application features.

UI/UX testing

Making sure the app is accessible and enjoyable to use.

Compatibility testing

Checking the app’s performance on different platforms.

Localization testing

Assessing the correctness of translations and currencies.

Regression testing

Ensuring that old bugs don’t make it into the new version.

Exploratory testing

Trying to find as many bugs and imperfections as possible.

Results

The work on this project has been continuing for over three years. During this time, we have provided quality assurance for dozens of both major and smaller releases, helping the client consistently improve the functionality, performance, and usability of the solution. With a technically spotless, highly engaging app, the company has been steadily growing their audience and brand awareness, successfully competing with some of the market leaders. 

arrow-up-right-round

99.9%

application uptime

arrow-up-right-round

42%

reduction in booking errors

arrow-up-right-round

4.8/5

rating on the App Store

arrow-up-right-round

35%

faster release cycles

Ready to enhance your product’s stability and performance?

Schedule a call with our Head of Testing Department!

    Bruce Mason

    Delivery Director

    Thank you for your message!

    We’ll get back to you within one business day.