Testing Apps and Websites on Mobile Devices


With more users leveraging their smartphones and/or tablets instead of a personal computer, the importance of QA on mobile devices has increased over the past few years. The resource-constrained environment of a portable device — less RAM, smaller screen — raises issues for both developers as well as testers. Testing mobile websites and applications has become a convoluted process.

Adding to the complexity is the cornucopia of OS versions available for both the iOS and Android platforms, which doesn’t even take into account the differences in hardware, especially screen sizes. The fragmentation of the Android market also causes frustration for many mobile development shops.

This next series of blog posts focuses on the process of QA on mobile devices.

Mobile Website QA on iOS and Android

Testing web applications on desktops is a detailed task by itself considering the multitude of browsers (and different versions) all with their own slightly unique way of handling JavaScript and rendering CSS layout. Both developers and testers need to ensure websites operate in a consistent manner no matter the browser and its version number. Migrate that process onto a mobile device and other issues can arise.

The iOS platform partially benefits from Apple’s “walled garden.” Apple handles the manufacturing of all devices and keeps tight rein on what apps become available at the iTunes App Store. Only recently did they allow alternatives to Safari as a mobile web browser for the iPhone and iPad.

Android, on the other hand, is more of a free for all. Different device makers and a wider array of mobile web browsers make testing mobile web apps on Android a more difficult proposition. An open platform is also more prone to mobile malware, which means testing for security becomes paramount.

Emulators are necessary for Mobile QA

One of the difficulties facing QA managers responsible for mobile testing is the procurement of enough devices to properly vet apps and websites. Finding a good supply of older iPhones, iPads, as well as Android smartphones and tablets from different manufacturers is challenging. Because of this issue, the use of emulators simulating the operation of a mobile device plays a large role in mobile QA.

Software engineers also use emulators as part of the mobile development process. Apple’s Xcode includes iPhone and iPad emulators capable of running multiple iOS versions. Google also offers similar functionality in its Android IDE, but the wider variety of device makers adds an extra layer of complexity.

Since QA staff also employs emulation as a major aspect of their testing process, many companies are now offering stand-alone mobile emulators as an alternative to those contained within a software development IDE. One caveat to remember is an emulator is running with the horsepower of a desktop PC, so the overall performance tends to be better when compared to an actual device. The QA team needs to factor that in to their final test results.

Stay tuned to upcoming Betica blog posts as we dive deeper into the use of mobile emulators in QA.