Features test applications on mobile devices

Features test mobile applications in general
Mobile users expect that applications are installed they are simple, intuitive, working always and everywhere without fail. If expectations are not met, the user simply sets a similar application from another author, who in the field of mobile development is always enough. Therefore, application quality is a major factor in its popularity.

To understand the characteristics of the testing of mobile applications should take into account the points fundamentally different mobile applications on desktop: The OS specificity for mobile platforms, different companies, manufacturers of devices and configuration of components, devices functionality as communicators, etc.

In connection with these features, the approach to application development and, in particular, mobile testing is quite different from the desktop. There are many other important nuances and requirements that must be tested. Little is devoted to basic differences in some types of testing:

Testing Updates – Frequent updates to the operating system (relative to desktops) lead to the need to update the application. The update should take place is simple and not require the user to specific knowledge. It should also be possible to test various ways of installing the application (Wi-Fi, 3G, install a PC on SD).

Testing internationalization allows early mobile application development process to ensure the support of cultural characteristics of other countries (mainly in the language support). Internationalization in mobile applications is very common, as is a relatively simple way to serious increase of the target audience. The process may occur many specific problems for mobile platforms, such as lack of space on the screen.

Usability testing (vacuactivus). This type of testing is one of the most important, because in a highly competitive usability of the application is included in the list of the main parameters that affect the popularity of the product. It allows you to identify the parts of the application that are not attractive or cause trouble in the navigation or the use on touch screens. It should also make sure that the model of resource consumption application corresponds to the target audience. For example, application reminders should not cause excessive energy consumption. Often, this testing is done in the form of beta.

Stress testing involves monitoring the use of memory and system resources; In addition, stress testing allows to identify “bottlenecks” in the annex relating to the performance, as well as to detect dangerous memory leak.

Random testing (fuzzy testing, “monkey” testing) – the application should properly respond to the emergence of random and unpredictable events. Mobile devices are more likely to fall into the conditions in which the chaotic receive useless information (for example, an unlocked device is in your pocket), because the application must adequately respond to these data streams.

Multiplatform and multidevice testing – the application should work properly on all configurations of all the devices that were developed. Due to the fragmentation of the mobile phone challenge test all available types of devices that use different operating systems assembly, and which have different screen resolutions, functionality and hardware, just as important, as difficult to achieve.

Laboratory testing – simulation of the real conditions of the quality of communication and the environment. Usually not obvious how an application will behave, for example, when an unstable signal or Wi-Fi with a zero balance on the account in the 3G network. This type of test allows you to check such cases.



Tools Test utilities for mobile devices: an overview of the options and opportunities

How to improve the quality of labor tester of applications for mobile devices, and get rid of the routine? Obviously, with the help of additional tools – from small applications and add-on SDK to multifunctional automated harvesters performing complex testing.

Capture video from your device screen
Often, the ability to record video reproducible bugs is very helpful – it helps to more fully describe the bug and thus save time developers, and even avoid reopening the bug due to a misunderstanding.

Android screen capture – an application for the transmission of video screen Android-device to a computer monitor. True program does not yet know how to record video – only to automatically take a series of screenshots of the screen when you change. But nothing prevents the use of desktop skrinshotery with video recording capabilities. Requires installed Android SDK.

Reflector – for an extra charge ($ 13) a tool to capture video from iOS-devices without requiring a physical connection to the desktop. It runs on Windows and Mac. There is a ten-minute trial.
As for the iPad and iPhone there Display Recorder app, but it constantly disappears from the AppStore, it appears. At this point in the search gives nothing AppStore (note that the Display Recorder HD – is another application that has no screen recording function). Different sources name different prices for the application (from two to ten dollars).

Emulators
Emulator – a program that is fully or partially duplicates the functionality and behavior of the device, or another program.

Some of the advantages of using the emulator:

Operational testing of the application, when the target mobile phone is not available (or is in short supply);
testing difficult or dangerous scenario that is not possible or not advisable to check on the actual mobile phones (for example, tests which in any way can bring the phone out of order or violate the terms of the agreement with the mobile operator).
Minuses:

Emulators are often very demanding, as the highest quality of them emulate applications work with the lowest levels;
that the application is running on the emulator, it does not mean almost nothing, because users will run applications on real mobile handsets that are always different, even from the best emulators.
Testing on the target mobile phone – it’s the surest way to ensure proper functioning of the application, because the application you are running on the same hardware, which will be your users.

For all common mobile operating systems offered free (for developers) and quite functional emulators. For example, there is an official Android Android the SDK, which includes a mobile device emulator that implements all of the hardware and software features of a typical device. The same “native” solution has to iOS, and Windows Phone.

Also, of course, there are alternatives:

MobiOne Developer – is a mobile Web IDE for the Windows, helps developers to program, test, debug, package, and deploy a mobile web application on the device. It has many useful features such as viewing source code of the page and the code inspector. Pay Solution (now – $ 100), there is a 15-day trial, it supports iOS and Android.

Electric Mobile Studio 2012 – emulator for testing iOS web applications under Windows. Supports jQuery Mobile, Mobile Web JavaScript, HTML5. Embedded in Visual Studio 2012 allows to emulate work with geolocation, to switch between the type of device “on the fly” and so on. The decision paid (currently – about $ 40), there is a seven-day trial. Also in the network you can still find the older free lite-version.

Opera Mobile Emulator and Opera Mini Simulator allows you to test a corresponding Web browser application. Both products are free (second-line general – does not require installation on your computer).

BlueStacks App Player allows you to run Android-application on a Windows XP-8 and MacOS. Apparently, the app is a virtual machine that does not emulate the behavior of the devices, but can be useful for testing the functionality of the application in terms of inaccessibility of other ways.