Mobile App Automation Testing Using Appium for Wine - Sommelier Application

Mobile App Automation Testing Using Appium for Wine - Sommelier Application

How we did automation and manual regression for the AI-Powered Wine Application using Appium?
Case

Red, white, sparkling, rosé, chardonnay, etc., there are so, so many choices in the world of wine. When it comes to picking one, you are often left with a lot of questions, like what kind of wine you like, what kind of wine you and your friends can enjoy together, what food goes best with your favorite wine and so on. We always spend way too much money on different bottles of wine to finally find the one that satisfies our palates. However, most of the time, we end up getting nothing but a big bill.

To help ease all these wine troubles away, our client, a Washington-based company, combined artificial intelligence and wine. Our client developed an application that comes with artificial intelligence to help people choose the best wine that matches their unique palate, individual tastes and wine history. The application helps you to choose the wine that you will enjoy, the one that fits your budget, help locate the restaurants with wines that suit your tastes, let you know the wines that are in season and help you remember the wines you’ve enjoyed for future reference. If you are not blown away by that, we don’t know what will. With the app in hand, they approached our team at TA. We were also part of the development team for the application, but that is a whole other story.

The client approached our team at TA to test the application for both iOS and Android. Our client wanted our expert testing team to test the functionality, usability, performance, consistency and other factors of the application to delight their users with an impressive and flawless wine-sommelier application.

Challenge

In today’s world, it has become critical and worthwhile to bring an idea or experience into the mobile space to reach the targeted users and connect with them on a personal level. Looking to build a community of passionate wine explorers, our client built an application that allows users to choose the wine that best meets their unique palate, fits their budget and overall have a fun time enjoying wine. For the client, it was essential that the application operates smoothly and function perfectly, making experiences better for their users on their platform. Following the development of the application, our client initially provided the application to another source for testing but faced several challenges in the process. And then came to our team for the testing of the application from intermediate.


The challenges faced by our client include:

  • to bring an idea or experience into the mobile space
  • test the application for both iOS and Android
  • smoothly functioning of the application
  • poor results from the other source for testing
Solution

With the already developed application in hand, the client approached our team to test the application for iOS and Android. From one side, our team performed automation in Appium from scratch and also performed manual regression testing. Initially, we faced several challenges in setting the framework. We did all the test cases in the Xray plugin available in the Test management tool-Jira. In testing, we tested all the features using automation and manual regression testing. We faced a lot more difficulties in automation testing than in regression testing. Since it was a new app, automation testing was difficult. Since each and every button/field were missing test IDs for the Appium inspector to detect, our team coordinated with the development team to get those added Browserstack’s App Automate devices used for running the automation scripts.


Once the automation scripts for a certain module have been completed, they are uploaded to the Bitbucket repository. Currently, regression and smoke tests are executed on the tester's workstation using Browserstack's app automation, as opposed to real devices. Team intends to incorporate scripts into the Bitbucket process independent of the tester's workstation.


As for the working of the application, all the activities are tracked by AI. Users can log in using their Gmail, Apple or Facebook. When one user signs up for the application, it will show a list of different wines. The user can then select the preferred three wines and save them, which get added to the listing, and we can change the preference whenever we want to. After entering the preference, the application then provides up to a 100% taste match, providing the best recommendation for the wine of the user's preference. The user gets to add filters based on preference, budget, location, etc. Then, if you desire to buy online, it comes with a buy now option, where the user, once determining the wine of their preference, can get the desired wine from the outlets. The application also provides daily offers and flash sales where the user can get several discounts on their desired wine. The user gets to choose the wine that fits the budget without overpaying much. The application offers a unique set of seasonal wine lists based on the summer, winter, spring, or autumn.


If you wish to splurge some bucks on expensive wines that soothe your palette, the app makes that also possible. If you see a wine to your taste and want to order it in the future, the application enables the wishlist feature to save the wines so that in the future the user can go to the profile and see them. The application also enables the user to provide ratings, enabling the user to prove whether ratings are private or public. The user can also add notes to the ratings. Along with these features, the app also provides information on the contents, origin, food pairings, the grape used, etc. The app also allows you to select a wine that suits the preferences of the members of your social groups as well as matches the tastes of multiple people. The user can invite members and earn rewards, coupons, etc. If the user refers to 10 people, stands to get a bottle of wine to send an invite code to the friends. Or maybe you can buy it for a friend based on their taste.


Another main feature of the app is its scanning feature, which can scan QR code, latte labels, wine lists, etc. The read data will be digitized to check whether the wine is available or not, or maybe wish list the variety of that wine for the future.


The solutions provided include:

  • Test case management in Xray which is available as a plugin from Jira
  • Bug reporting in Jira
  • Performing feature and regression testing for both iOS and Android apps
  • iOS and Android app automation using Appium with Java
  • Automation framework uses TestNG and page object model
  • ExtentReports library is used for automation test execution report
Impact

Amid the fast and ever-growing pace of technological advancements, shopping behaviors have changed, and visiting a physical store has now become much of a rarity. With the rise of smartphones, mobile shopping and online sales are at their highest levels ever, and it seems likely that e-commerce will continue to grow. From small startups to large enterprises, e-commerce is spreading its wings in the global and online marketplaces. For this reason, staying on top of e-commerce is important for the near and far future. Keeping this in mind, our team approached the testing of the AI-powered wine-recommender application, the one-stop shop for selecting and buying wines.

Rather than relying on expert opinions that may not be available in the digital world, the impacts of the application are:

  • AI and customization for informed wine purchases
  • Taste match technology
  • Explore trending wines and purchase 10,000+ varieties online
Expertise

We are a custom software development company offering one of the top mobile application development companies, helping customers across industries to accelerate their digital transformation journey. Software development companies cannot afford to lag behind and compromise on quality and speed. In the constantly evolving online market, where quick and consistent software releases and software updates are required, test automation in software engineering plays a pivotal role. Automated testing in software testing (link to test automation page) has become the key enabler of many advanced development and deployment practices and turned out to be critical for companies that decide to implement Agile or DevOps methodologies. Comprehensive mobile testing solutions ensure better performance.

Technologies

Leverage next-gen mobile app testing services with TA

Get a quote