Manual testing of mobile applications is the process of verifying the operation of a mobile program through user actions on a device (or in an emulator) to ensure compliance with development requirements.
Background:
With the advent of smartphones, the focus of development and testing has shifted from desktop and web products to mobile. Mobile devices have a unique architecture, limited resources, variable networks, and distinct interface behavior, which has intensified the need for testing specifically on real devices, rather than just in emulators.
Problem:
Mobile applications operate on different OS versions, device models, with varying screen resolutions and internet speeds. Bugs often manifest on one platform and are absent on another. Some issues are related to multi-touch, sensors, restarts, or transitions between applications.
Solution:
Testing includes sequential stages:
Key Features:
What types of bugs are most often overlooked when testing only on emulators?
Battery issues, performance speed, problems with sensors, push notifications, and hardware interactions only appear on real devices.
Why is it important to test applications on older versions of OS?
Because API support and the behavior of system functions (permissions, notifications) vary; often bugs manifest only on older versions of Android or iOS.
How does validation in mobile testing differ from desktop?
In mobile testing, it is mandatory to check reactions to non-standard scenarios (calls, SMS, loss of network), which is not relevant for desktop.
Tested only on iPhone 14 and the latest Android through an emulator. After release, users with Android 7 and Xiaomi complained about the lack of push notifications and freezing when returning from a call.
Pros:
Cons:
Tested on a pool of 10 devices (different brands, OS versions), tried scenarios with incoming calls, loss of internet, switching cameras. The result — bugs were found before release, requirements were met.
Pros:
Cons: