When working with mobile applications or mobile websites development, the biggest hassle comes in terms of device compatibility and cross platform interoperability. Unlike desktop or web solutions where we have 2-3 very popular operating systems and some major browsers, mobile technologies don’t have any de facto standards yet. With wide variety of manufacturer specific solutions and platforms, there are number of browsers, OS and hardware configurations and each of these behaves differently in different scenarios. In other words, we have n number of configuration options, which means if an application or mobile website works well on a certain handset or platform that still might end up as a disastrous experience on some other platform. There can be memory issues or page rendering problems or unaccounted screen resolution or just incompatibility.
Thus if a developer is working in this particular domain, he/she can very well expect an email box full of complaints/bugs on the very same day of application launch. You can ask whatever happened to the QA testing but that is not as easy as it sounds. We are talking about more than 15 major players (and we haven’t started counting the small fishes yet) with each of them having average 50-60 models in their product basket and still trying to reinvent themselves with each coming day. On top of that there are operator specific versions of individual phones and thus same phone offered under operator ‘A’ might be different than of operator ‘B’. Needless to say, a mobile developer or company cannot be expected to buy each of these mobile phones and ensure compatibility for their application. There are emulators but those provide very preliminary means of testing. They cannot replicate the device behavior to 100% and thus that small and sometimes rather large possibilities of errors are always there.
This is where Device Anywhere comes in picture. DeviceAnywhere is a California based company which offers a SAAS solution for remote testing on real mobile devices in live networks via its internet based software. It virtualizes the mobile handsets that can be accessed and viewed over internet. There is software which acts as a virtual user and enables you to control the device like a real device in your hands. You can control the remote device with an emulator kind of interface where user is able to press keys, connect/disconnect battery, tap screen, restart and even open or close flips. The output is streamed to your PC monitor and speakers through the same emulator interface. We can imagine of an emulator on PC but instead of software responding to your request, actual phone will be processing the requests here and output will be streamed back to your screen.
The devices are connected with electrical sensors and device operating system interprets user actions to revert with actual output as returned by phone. DeviceAnywhere Test Center™ provides instant remote access to more than 2000 real devices across live global networks in 7 countries.
The solution comes handy when you have to ensure compatibility with numerous devices or need to check an application on certain device or certain operator networks. These remote devices are as good as a real device and you can expect an exact response through the virtual phone interface emulated on your PC.
While the service looks like an optimum solution for on device testing of your solutions, there are some pitfalls as well. First of these is, it does not come cheap. You will need to pay almost 100 USD monthly for subscription and then around 16-20 USD per hour per device which is not very economic to say the least. Then, if you have a slow speed internet connection, you might end up in waiting for long periods once you click and actually see the response. Lastly there are few features which cannot be tested adequately. For example if you need to work on Bluetooth you might not be able to pair with a nearby device. However, it is safe to say that it is the closest if you don’t have a real device and a great solution for application testing needs.