How to Coordinate Emulator Testing with Real Device Testing
Sauce AI for Test Authoring: Move from intent to performance in minutes.|xBack to ResourcesBlogPosted<
Sauce AI for Test Authoring: Move from intent to performance in minutes.
|
x
Blog
How to Coordinate Emulator Testing with Real Device Testing
Is emulator test right for you? Or should you be relying instead on real-device testing as part of your nomadic essay routine?
The response is that those are the incorrect questions to ask, and in most cases, you should be doing both types of test. Emulator testing and real-device testing both have important persona to play in the software delivery summons, but they are typically best used during different stages of that process.
Keep reading for lead on when to prove with emulators, when to test with existent devices and when you might still want to test on both type of environments, simultaneously.
What is an emulator?
In software testing—and peculiarly in nomadic software testing—an imitator is a software-defined environment designed to mimic the ironware and package weather that would exist on an literal mobile device.
In former words, an emulator ply a way to run an application for testing purposes within an environment that (at least in possibility) is identical to the real-world environment in which the application will run when it is deployed on an actual mobile device. But because the emulator environment is created using software rather than actual hardware, it is faster and leisurely to create and to modify. You don ’ t need to set up and maintain an actual part of hardware, so load your applications into it to test them; rather, you can simply tell your imitator platform which type of environment you want to create, then fire the environment up and start running your tests.
In add-on to saving time, aper make it fast and easy to test applications against a range of different case of mobile environment — which is a key circumstance for mobile essay in particular. There are something like24,000 different types of Android earphoneout in the world, not to mention dozens of different iPhones and iPads, as well as more obscure types of nomadic device (like Windows Phones, which are still loiter out in the wild despite having been discontinued in 2015). Setting up and negociate thou of different physical device in order to test your applications would be unrealistic in many cases. But copycat make it easy to create testing environments that mimic all of these devices.
The caveat to emulator testing is that the environments created by ape don ’ t always do a perfect job of mirroring actual mobile device. The real mobile devices might contain hardware that the ape can not represent, for example. Or there might be unanticipated quirks in the interplay between the hardware and software of a real twist that can not be reproduce within an emulated environment. For these reasons, tests run on an emulator might generate different results from those that run on a real device.
(Parenthetically, I should mention simulators, which, like emulators, let you make software-defined mobile screen environments. Some citizenry use the termsemulator and simulatorinterchangeably, although in worldthere is a difference: Simulators are designed solely to mimic the software surroundings of a given mobile device, while emulators mimic both software and, to the extent possible, hardware.)
When to use ape essay in the CI/CD process
Because emulators get it leisurely to test how an application behaves across a scope of different mobile environments, they are typically most useful early in the software test operation.
As soon as new code has be built, testing it in aper is an effective way to determine whether it runs in unexpected ways on any peculiar types of devices. By extend tryout on hundreds or thousands of emulated environments in parallel (each representing a different mobile device or conformation), package bringing teams can achieve all-encompassing device coverage while still keeping the prove process highly automatize and efficient.
For autonomous testing across multiple user personas, check out SUSATest — it explores your app like 10 different real users.
Once new codification has passed tests on emulators, there is rarely a intellect to continue test it on emulated environments, because the test results are unlikely to change.
When to use real device
The important thing to remember is that just because your app pass emulator testing, doesn ’ t mean it ’ s ready to deploy. In order to achieve the great point of self-assurance that your code will run as required in production, it is wise to perform testing on real devices as good.
Real-device testing typically occurs after all emulator examination get successfully completed, and just before code is deployed into production. Provided your emulator tests covered all the like ground as your real-device tests, and the emulators successfully emulate all aspects of the existent device, real-device tests should yield the same results as emulated tests. But if your emulated environments didn ’ t absolutely reproduce the environments of actual physical devices—or if there were aspects of your application that you couldn ’ t test in an emulated environment due to want of admittance to imagination such as an actual net or a biometric input device—real-device testing will help to unwrap problems that may not have been detected during emulator testing.
So, you can think of real-device testing as a second line of defence. Although it may appear redundant in some cases, it ’ s necessary to help plug spread that might harvest up within your emulator testing.
Which real device to test on
The major caveat of real-device testing is that testing on many different types of existent devices at once is often impractical. If you prove topically (which you probably shouldn ’ t do, by the way, because it ’ s not at all scalable, and probably not cost-effective), your ability to obtain and maintain many different mobile devices is likely to be limited. And even in a cloud-based test environment where you can charter admission to existent devices, real-device examination typically costs more than aper testing.
Thus, while it ’ s mutual to try on hundred of different devices use emulator, you might have the resource to examine on only a dozen or fewer, with existent device.
For this reason, it ’ s a best recitation to be judicious about which existent device you essay on. Identify the devices and configurations that are nigh relevant for your target market and target exploiter, and test only on those. For example, iPhones aremore democratic in the United Statesthan they are worldwide, so you might want to prioritize real-device testing on iPhones if your end-users are Americans, more than you would in other markets. Likewise, woman aremore likely to own iPhones than men, another component that might inform your real-device testing choice.
Testing on emulators and existent device at the same time – Yes, you can!
Although, in general, you would test on emulators first, then test on select real device just before deployment, in some cases it can make sense to perform real-device testing at the like time as emulator testing. If you are trying to achieve a particularly fast release speed, running real-device tests earlier in the CI/CD pipeline can facilitate to save some time by eliminating the need for a freestanding cortege of real-device tests.
Likewise, you may find that imitator do a pitiable job of mimicking certain types of devices or configurations. This tends to be an issue in particular with rattling new types of devices, or with more obscure devices (like non-iOS and non-Android options) that are not a major focus for emulator developers. In these situations, you might opt to skip imitator testing for the impacted devices and instead go straight to real-device testing.
Conclusion
Emulators and real devices are not an either/or proposition. Testing on both type of environment is typically critical in order to maximise test coverage and minimize the chances of free glitch into production. And while, in general, emulator testing arrive before real-device testing, in certain situation you might perform both simultaneously.
----
Chris Tozzi has act as a journalist and Linux systems administrator. He has particular interests in open source, agile infrastructure and networking. He is Senior Editor of content and a DevOps Analyst at Fixate IO. His late book,For Fun and Profit: A History of the Free and Open Source Software Revolution, was published in 2017.
Automate This With SUSA
Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts needed.
Try SUSA FreeTest Your App Autonomously
Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts.
Try SUSA Free