First, emulators allow for inexpensive and quick functional testing of your
application. You can step through the application to find events and circumstances
that do not meet the program requirements. Identify these
bugs using emulators before you get into the expense of device testing.
Second, emulators are easy to manage, and because they run on PCs,
every tester or developer can have an emulator. Developers can manage
the software themselves, precluding the need of system administrators.
Third, most emulator packages support multiple devices. To test a different
device, just load a different device profile. Best of all, you incur no expensive
carrier airtime costs. Fourth, emulators run on computers with more
resources, such as faster CPUs and more memory. Fast response times
during testing enables you to complete tests more quickly.
The last and probably most significant advantage is that most emulators
employ high-level scripting languages, so you can create consistent, automated
tests, which are less error prone and quicker than manual testing.
Automated scripting also allows for easier and faster regression testing,
which is especially important when verifying that changes made to your application to support one device don’t break support for another