Ilya Dudkin 10/12/2018 #QA #Tips 8 min readIt’s difficult to imagine our lives without modern gadgets and mobile apps that come with them. One of the main stages of mobile app development is application testing. This process, better known as app QA testing, requires careful planning which will allow you to devote the necessary amount of time for checking all functionalities to roll out a quality product. Let’s delve in deeper into the process of mobile app testing to get a better understanding of how the process works.What is Mobile TestingBefore launching a new mobile app, it needs to be thoroughly tested for functionality, usability, and consistency. Such tests can be conducted manually, or they could be automated depending on the type of testing performed. As a rule, automated testing takes preference over manual testing because it removes the human factor and produces, consistently, the same results. Since both mobile application development and testing take up a lot of time, it is vital that any flaws or bugs are detected and removed as early as possible in order to avoid costly revisions, where you may need to start back at square one.When planning out the testing process, please keep in mind that mobile app testing requires a lot more time than testing a desktop app or a website. Therefore it is important to allot extra time for the following mobile app testing scenarios:Testing the requirementsTesting for API version compatibilityMaking sure that the app works on various mobile devicesUsability testingLet’s look at each of these points closer to determine how to test mobile applications.Mobile Testing TutorialTesting the requirements – Even though testing the requirements may not be included in the checklist for testing fixes, it is still important because you might encounter a situation where the list of requirements may be incomplete i.e. they do not take into account the specifics of mobile app testing or they contradicted the requirements for web applications. If you overlook this step, you will wind up with a product that works differently depending on the platform that runs it, or you will run into system errors due to unforeseen user actions. Needless to say, it will be extremely time-consuming to go back and fix all of the mistakes, back in the requirements stage.Testing for API version compatibility – The ever-changing functionalities of the web apps on the basis of which the mobile apps were created is another factor that gives developers nightmares. The release of the programs could not keep up with the changes to the web versions and data structures and, as a result, the web services stopped returning the data needed by the mobile app. Because of this, API testing became an integral part of the testing process, specifically, making sure the data being transmitted via the REST allows you to timely identify and fix areas where the mobile app lags behind the web version.Testing on various mobile devices – During the functional testing of basic checks for compliance of the app’s functions with the specifications, it is necessary to test the behavior of the application in various situations such as:Switching to background mode when you receive calls and SMSThe application works while connected to other devices;The application works with different types of Internet connections (Wi-Fi, 4G, 3G);Offline communication handling (displaying messages when there is no Internet connection and proper work continuation when it is restored)Reinstalling and updating the application to the new versionUsability testing – It is very important to provide the user with the maximum amount of comfort while working with the application, which implies the work speed, simplicity, and clarity of the interface minimal keyboard input and timely response to user actions. It is also necessary that the application conforms to generally accepted standards (guidelines) on style.To sum up, we can say that when testing a mobile application, special attention should be paid to the choice of devices to be tested, take into account the time necessary to test requirements and APIs, as well as to carry out a full quality check of the application behavior in real conditions of mobile device use. There could be numerous test cases for Android mobile application or any other platform, which you should always remember that the most important thing is to provide the user with simplicity and work convenience with your mobile application. A lot of developers and companies alike get bogged down into the all the cool cutting-edge features that are built into the app. What they fail to do is stop and ask themselves “Is this convenient for the user?” Perhaps the user prefers simplicity over some complex feature which you might feel is necessary. Therefore, regardless of the test plan for mobile application, the testing itself should be user-oriented to give each user the best possible experience while using your app.