When to Test On Mobile Devices: Real vs. Virtual
Virtual and real devices both have their strengths in mobile app testing. But there’s widespread misunderstanding when it comes to using them in a mobile testing strategy.
If you are wondering when to test on these types of mobile devices, you’re in the right place. We break down the differences between real and virtual devices, and when you should use each in the testing process.
Understanding Virtual Platforms
When we talk about virtual platforms for mobile testing, we’re talking about testing on emulators and simulators.
- Emulator — An emulator is a virtual Android device. It duplicates the hardware or OS of the device.
- Simulator — A simulator is a virtual iOS device. It mimics the behavior of an iPhone.
There are some differences between emulation vs. simulation. But over all, they are both software tools that can emulate their respective operating systems on your desktop. Most of these virtual platforms are embedded within the core IDEs, like Google’s Android Studio and Apple XCode.
Benefits of Virtual Platforms
Virtual platforms are handy for developers, who can deploy their apps against them in early development stages. This allows them to understand how their apps behave and what they look like. Virtual platforms can also be used for debugging.
Virtual devices are lauded for their speed. They are without a doubt faster than real devices when it comes to testing. And this helps teams keep pace with rapid and frequent application updates in the widely fragmented mobile space. Additionally, virtual platforms enable teams to practice shift left testing to test mobile apps earlier in the cycle.
Using a virtual platform for Android or iOS development and testing from the local IDE can be a powerful solution. They are a valuable addition to any team’s automation test strategy.
However, when used alone, teams run the risk of escaped defects, as many defects can only be caught on real devices.
Benefits of Real Mobile Devices
Emulators and simulators can be useful for testing — but they need to be accompanied with real mobile devices too. At the end of the day, users report real defects on real devices, not on virtual ones. That’s why you need to test your apps on real devices too.
Real devices provide the truest environment that mirrors what your users experience. And there are a number of things that real devices allow you to test that you can’t replicate in virtual device testing, such as:
- Popup notifications.
- MDM system integration.
- Two-factor authentication.
- Real cellular network behavior.
- Device brightness and background color.
- GPU abilities.
- And much more.
As you can imagine, these are all critical to the end user experience. To forgo testing these functions in a virtual-only testing strategy leaves room for many defects to slip into release, which is why real devices are so critical to any mobile testing strategy.
When to Test on Mobile Devices: Real vs. Virtual
Now let’s break down the testing process, and where you should use each type of platform.
When to Test On Virtual Devices
Simulators and emulators are the preferred platforms for certain types of testing, and utilizing them helps teams maximize coverage without needing to rely on real devices in the early stages of development.
As a general rule of thumb, reserve virtual devices for testing early in the cycle. Virtual platforms are great for using early in the feature development cycle, when development happens on a local machine.
Simulators and emulators are ideal for unit testing, where developers can test isolated units of code per each commit. Virtual platforms can provide the feedback and debugging information developers need at this point.
When to Test On Real Devices
Real device testing is best reserved for later in the cycle. As your app enters the integration phase, you’ll need to transition to real device testing. Use real mobile devices as your app requires integration, functional, and non functional testing as part of the CI phase.
And as you begin acceptance testing as part of the release phase, test on real device/OS configurations that align with your target audience. You can get specific information on device and browser usage in your area in our Test Coverage Index.
Combine Real & Virtual Devices With Perfecto
The best mobile testing strategies utilize both real and virtual platforms. By combining both, teams can achieve higher levels of test coverage, while testing faster and releasing high-quality apps with fewer defects.
Try testing on real and virtual platforms with Perfecto’s testing cloud. Perfecto offers both real and virtual devices for mobile testing, as well as:
● Real Macs and Windows VMs to test web apps.
● Elastic scaling of your tests.
● 24/7, global access to the cloud.
● Enterprise-grade security.
● Extended test coverage.
● Built-in test reporting and analytics.
See for yourself. Get a custom demo of Perfecto today.