Mobile App Testing Devices: Emulators/Simulators or Physical Devices?

What's the difference between emulators, simulators, and physical devices? What are the pros and cons of each? What's best for your team?

See all articles
Mobile App Testing Devices: Emulators/Simulators or Physical Devices?

Image: Shutterstock

At Sofy, we’re well aware that the development landscape is in a period of transition. In turn, it’s easy to see how shifting definitions of common terms and the introduction of new concepts can lead to confusion and bewilderment among development teams (check out Sofy’s ever-expanding glossary of terms to know here).

In the blog post preceding this one, we discussed the hot topic of manual-code, low-code, and no-code approaches, highlighting the strengths and weaknesses of each. Yet whatever approach you decides to pursue, your team must inevitably choose between the use of emulators and physical devices. Like the choice between manual coding, low-code, and no-code solutions, each path presents potential benefits and drawbacks that must be carefully considered.

Emulators and simulators

Emulators (sometimes referred to as simulators) are digital representations of physical devices. Quality assurance testers use emulators to avoid the cost of acquiring, housing, and maintaining physical devices. And so, when a team identifies a need to test on multiple devices, testers can conceivably set up a testing environment solely employing emulators, all without paying a penny. 

Yet all too often that’s an ideal rather than reality. The core issue associated with emulators is the fact that emulators simply can’t offer a truly one-to-one match for the devices for which they are intended to represent: In reality, emulators can ultimately only offer an approximation of an actual device. What this means is that using emulators can be quite risky. 

Consider a common scenario among mobile device users: Emma depends on her favorite app for her everyday schedule: She utilizes it to wake up, to stay in touch with her friends, and to check her email. One cold morning, she opens her favorite app and, at the same time, she receives a phone call. The app suddenly crashes. 

Scenarios like these are quite typically experienced by smartphone users. You’re dependent upon this app, and yet this is a difficult scenario to replicate—and therefore to test for! —in an emulator-based testing environment. 

Replicating user environments is hardly the only challenge that comes with pursuing emulator-based testing. Working with locators presents other complexities, leading to significant challenges for testing teams. Identifying controls often makes for a particular problem. In general, testing platforms require ramp up to allow testers to set up their system, develop associated code and processes, and become familiar with the strengths and weaknesses of the results. And emulators must be consistently up to date. 

All of these factors equate to a significant expense that manifests in development and testing resources.

Physical devices

Testing with physical devices resolves most problems associated with emulator-based testing: With physical devices, there’s no need to attempt to imitate a device by way of an emulator. All of the mystery surrounding emulator-based testing vanishes, becoming a non-factor. There’s no need to wonder about the accuracy of a simulation. 

And yet physical devices present their own problems. For many testing teams, the biggest issue with setting up a physical device testing platform is cost. Purchasing up-to-date representations of particular physical devices on the market comes with considerable expense. 

Adding to this, just as with emulator-based testing environments, setup and maintenance often prove to be complicated: Quality assurance testers can expect a significant investment in building necessary code to interface with the devices. 

The result is that building a physical device testing platform is simply too resource intensive—in terms of both time and money—for most teams to consider, leading many teams to go directly to emulators. They then simply attempt to work around the above-mentioned emulator problems, and hope that the results are what they expect.

Is there another way? 

In the past, compromise was necessary for many teams who pined for well-maintained and up-to-date labs of physical devices. Such an approach was far beyond the budgets of many teams. Today this isn’t the case. Your team can easily access Sofy’s Device Lab through the Sofy platform, bringing the big-budget experience to all, and at a fraction of the cost. We invite you to try out Sofy today and start experiencing the benefits of the no-code revolution.

 

Sign up for a 14-day trial now!

1 2 3