Why is it necessary to test mobile website versions on real devices?
Proper testing of mobile versions of the website allows you to identify the factors affecting its loading speed and time. Optimizing such factors as image size and encoding, js-script and css settings, hosting settings and content compression makes it possible to increase loading speed of the pages by several times.
It is important to keep in mind that there is a huge difference between testing in browsers on real mobile devices and in their emulation. Emulators let you perform testing much faster, but the compatibility issues with specific devices cannot always be detected. Emulators only assume (quite accurately, though) how a particular browser works on a particular device but omit all the errors related to the specific behavior and interactions of a real browser on a real device. Therefore, if you require a guarantee that all possible bugs will be found, you need manual testing on real devices.
Mobile Website Testing Techniques
The most common types of manual and automated testing of the websites on mobile devices are:
- testing connection between the desktop and mobile website versions, which includes verifying how the users of specific devices are being redirected to the version of the website they need, checking how easy it is for the mobile web page users to access desktop version of the same page, searching for bugs in Vary-HTTP header settings and rel = alternate / canonical tags.
- identification of technical issues, i.e. checking the isolation of mobile pages from desktop ones, measuring the website loading time, testing program code support;
- User Experience (UX) testing on real devices, which involves viewing websites from smartphones and tablets operating on various platforms (iOS, Android), testing Viewport settings, media queries and page elements layout.
To test mobile versions of the websites, we use both testing methods, i.e. testing on real devices and on emulators which simulate a real device and allow us to perform testing on a single machine. At the same time, testing websites on real mobile devices is considered to be more effective, since it creates testing conditions that are as close as possible to actual use.
Our experts apply various techniques to test the functionality, compatibility, cross-browser and cross-platform operation of mobile websites, which allows us to detect and report all the bugs reducing the performance of the product.
Mobile Application Interrupt Test Types
The main goal of this testing type is to determine whether the application is able to function normally, to maintain the clarity and convenience of the interface, not losing entered data in case there’s a risk of deterioration or termination of its operation due to the following reasons:
- incoming calls;
- receiving SMS and MMS-messages;
- connecting headphones and playing audio files
- cell reception failures;
- connecting/disconnecting the charger;
- removing/inserting SD card or battery;
- operating at a low battery level;
- receiving notifications from other mobile applications;
- putting phone in standby mode and reactivating the device;
- pressing different phone buttons.
These are the most common reasons that may cause issues for the users of mobile applications. Interruption testing is utilized during the product development to make sure the application does not lose its operational properties. This type of testing ensures preservation of the application interface graphics, data integrity and its correct representation, the ability to use the products under critical conditions.
Software Interrupt Testing Types
When performing software testing we identify the consequences of software (caused by OS code defects) and hardware (related to the device hardware) failures in the stability of the running application. These types of failures include:
- power off;
- various failures in the OS operation;
- connecting/disconnecting of peripheral devices;
- minimization/expansion of the program;
- communication failures;
- launch of other programs.
To test native applications for interrupt, various software testing types are being utilized, such as manual and automated testing methods, “black box” method (testing without access to the program codes) and “white box” method (testing with search for bugs in the product code).
Manual testing involves the use of real devices and software environments. Automated discontinuity testing is performed using various tools and services, so that all test processes are accelerated, and the results of searching for bugs in the software product and factors negatively affecting the application performance become more accurate and reliable. For instance, to conduct interrupt tests on Android-based devices, we use a specialized program to generate random crashes and track how the applications respond to them.
We report all detected errors into bug trackers and rank them by priority in accordance with the verification matrix. Interrupt testing allows our customers to make their developed products more user-friendly, reliable, and attractive for the users.