8 minutes to read
Testing mobile applications made easy: here's a checklist for you
Mykhailo Ralduhin
Senior QA Engineer
It is difficult to overstate the importance of the testing process in the world of mobile applications. One single bug in the application will cost the developer tens and hundreds of negative user feedbacks, low rates and the lack of audience growth in a few hours in Google Play, and in a few weeks in the case of the App Store. In other words, it's a complete collapse.
Therefore, we've analyzed the typical mistakes of such updates and have prepared an article on what you should test before releasing a new build of your app.
Such responsibility implies certain skills and qualities that a tester should have:
Test Plan For Mobile Application Testing
If the test has to be engaged by the developer or the creator of the application, then the most effective organization of work will require:
The testing process begins prior to development, and immediately after the developers transmit navigation schemes and screen layouts design. These materials are more than enough to start the development process. But the navigation scheme often lacks some of the elements: there are no screens, which provide a transition, there are no restrictions for the input fields, some menu items do not have access from more than one screen or menu, errors are not displayed, etc.
Another significant problem is non-obviousness of the information provided: animation, work in critical situations, the work of hidden functionality. Therefore, the first test in a row is a test of all services under the development for completeness and inconsistency.
The development process begins only after the approval of all obscure and controversial moments. In parallel with the development, test scenarios are based on the specifics of the application. Their number can be up to several thousand depending on the complexity of the application and differences in user roles.
A Guide to Testing Mobile Apps
From a process standpoint, mobile applications testing may be divided into two categories: common (Smoke) test and functional. Software tester can be guided only by the information that he received during the processing of documentation by developers in the preparation of test cases before the delivery of the first build.
Therefore, testing of the first build always begins with the Smoke test. Subsequently, carrying out of these tests will be the criterion delivery of builds for the final release. A set of test cases depends on the specifics of the application. However, there are some specific testing types that QA Engineers use most of all.
Mobile App Testing Checklist Contents
This is the most important element of any application. Particular attention should be paid to the content verification.
What should be checked:
All text and graphic blocks;
Support language;
Correct display of all the elements;
Checking the related information: dates, numbers, time, etc.;
Procedure and value for money purchases within the application.
The response in the app
If the user uses some application options (presses the button, opens the menu, scans something), the user should get the expected response from the application, which means that the sequence is correct.
What should be checked:
Adequate displaying of the tapped elements;
The response of the buttons after pressing. It is best to check for weak devices;
Error messages in the application (loading error, lack of access, removal of information, etc.);
Relevant and correct display of media content (sounds, vibrations).
Updates
They should be simple and quick for users. We should not require additional knowledge. After the update, the application must not lose the stored user information. Updates should be installed via any Internet connection.
What should be checked:
Compliance of new and old versions functionality;
Adequacy of updates (whether all the data is stored).
Abnormal Cases (Monkey test)
The application must adequately respond to the incoming chaotic information: putting the device into the pocket without locking the screen, clicking on a few items at a time, etc.
What should be checked:
Easy navigation through the application;
The absence of a blank screen;
Pressing all the keys;
Native gestures provided functionality.
Application Interruption
The mobile device - this is primarily a communication device. Therefore, the application must adequately respond to the disruption.
What should be checked:
The reaction to incoming information (calls, SMS, MMS, notifications, other applications);
The application reaction to the behavior of the device (power off, waiting for a network connection, charging, keyboard, etc.).
Multiplatform
The application should be displayed correctly on different types of devices.
What should be checked:
Work on the retina-screen interface elements;
Moving applications from a horizontal to a vertical position;
The functional test of the correct version of the operating system;
Adequate work of all media files on different devices and operating systems.
Operating possibilities of Devices
Sometimes, a simultaneous load of several apps makes it impossible to open a new or load the correctly opened one. The application should take into account these situations.
What should be checked:
Application work in memory lack conditions;
The behavior of the application when opening in low memory conditions;
The behavior of the application in a lack of free space for installation;
The behavior of the application in the absence of any functions on your device (3G, SD-card, etc.);
Adding, moving and deleting applications.
Regulatory Compliance
This is a guideline, which many application stores have. Also there are certain rules for the organization of the installation files, the rules of app design from Google Play, the guideline for the interfaces from App Store and application requirements from Windows Phone.
Functional test stage comes after the smoke-test stage ends. By this stage, the application will undergo many corrections. Do not expect that the testing process will end quickly. In any case, it will take the tester more time than planned to spend. Functional tests relate to the specifics of a particular application to use and take into account the characteristics of the target audience. Just at this stage you will need the knowledge of the specifics of the business.
After removing all the bugs there comes a stage of complete or release testing. It includes re-smoke and monkey tests on as many devices as possible. This is the last stage before the delivery of the release. Carefully check the updates and integration with conversion counters. After the second stage of the test, the application release is ready to be published in a store.