Friday, November 12, 2010

Mobile Application Testing - Overview

Mobile Application Testing - Overview

The market for mobile applications increases every day and is just going to get more demanding as the technology grows. Mobile software testing, as the development, has some peculiarities. It requires special testing tools and techniques. The existing variety of mobile technologies, platforms and devices causes additional difficulties in developing and testing mobile software. You can use the same style of programming for mobile devices as well as for personal computers. However, you may need additional software testing tools to perform a testing process. You may choose an automated testing tool that helps to release a good competitive software product. At the same time, the tool must support testing under mobile platforms, so it’s important that you know how to select the appropriate automated testing tool for your tasks.
TestComplete, an automated testing tool, provides a lot of features designed specifically for testing mobile applications. By using these features you can save time and money spent on project development. With TestComplete you can organize an effective QA testing process for your mobile applications.

Supported Mobile Platforms

There are a lot of different mobile platforms and operating systems (OS) created for various mobile devices, such as pocket personal computers, smartphones and others. These devices are frequently named Personal Digital Assistants, or PDAs. We use a combination of all of these names in this article, but we are generally referring to the same thing and for the most part, these devices all work under Microsoft Windows Mobile, Symbian and Palm OS.
The Windows Mobile operating system based on Microsoft’s WinCE core is continuously improved. There are different versions of this operating system: Windows Mobile 5, Windows Mobile 6 and later. There are also earlier mobile OS versions based on the WinCE core, for instance, PocketPC 2003. So, the WinCE based operating systems become more useful and powerful from day-to-day and quickly gains market space for operating systems in mobile devices.
TestComplete can test mobile applications running on devices that have the WinCE platform installed or on Windows Mobile Emulator. It supports the PocketPC, Windows Mobile 5.0, 6.0 and 6.5 operating systems, including emulators.

Testing Mobile Applications - TestComplete Features

TestComplete makes testing mobile applications easy and provides various features for creating mobile application tests:
  • The PDA node in the Object Browser - View PDA objects in a tree-like structure and use them in your mobile application tests.
  • WinCETestedApps - A project item for automating actions over tested mobile applications easily.
  • Test Visualizer - The Visualizer subsystem captures images of the tested device’s screen and individual application windows during test recording and playback and lets you see what happens with your tested application during test recording and running.
  • Select object with cursor and Select object in Visualizer - Easy ways to select objects during test creation.
In addition, TestComplete provides a collection of special PDA objects that have methods and properties for simplifying the testing performed with mobile applications. Besides testing mobile applications and automating the QA testing process, TestComplete provides special tools for directly working with mobile devices:
  • PDA Controller - Controls the mobile device directly from the PC.
  • PDA File Manager - Works with mobile devices’ file systems.
  • PDA Registry Editor - Edits the registry on the mobile device.
TestComplete is a complete environment for testing mobile applications. It also includes all necessary service tools for working with mobile devices, so you don’t need any other additional software for managing your mobile device (for modifying the registry, copying files to the device and other actions).

PDA Node in TestComplete Object Browser

The mobile system objects are represented in TestComplete Object Browser as a tree named PDA. You can easily find the needed objects within the tree, for instance, a process, a window or any other control. You can also obtain a list of properties and methods which you can use for testing mobile application objects. The following picture demonstrates how two applications (Calculator and Orders) are represented in the Object Browser.
Viewing the object hierarchy in the Object Browser

Image 1 - Viewing the object hierarchy in the Object Browser

Managing Tested Mobile Applications

By adding your mobile application to the WinCETestedApps project item, you can easily automate different actions over it, such as launching, stopping, minimizing and many others.
The list of applications added to the WinCETestedApps item is also displayed in the WinCETestedApps editor:
 Working With Tested Mobile Applications

Image 2 - Working With Tested Mobile Applications
The editor allows you to specify the application to be tested, its path on the PC and the path to the folder on the PDA where the application’s executable will be deployed. You can also use the special Parameters dialog called from the editor to specify command-line arguments that will be used to launch the tested application and files that will be deployed on the PDA along with the application.
Specifying files to be deployed

Image 3 - Specifying files to be deployed
Using the WinCETestedApps project item or WinCETestedApps editor, you can also launch your tested application from TestComplete’s UI rather than having to switch to another application or device to launch it:
Running Tested Application

Image 4 - Running the Tested Mobile Application

Selecting Mobile Application Objects to Test

GUI tests check the user interface functionality of your application. When creating GUI tests, you should know how to refer to an object (a button, a menu control and so on) from tests. It is easy to refer to application objects by their names. You can find object names in the Object Browser panel, or you can use the Select Object window to quickly determine the name of needed object. Just move the mouse cursor to the desired object and TestComplete will display its name:
Determining PDA Object

Image 5 - Determining the PDA Object

PDA Controller

One of the most useful TestComplete panels when working with mobile devices is the PDA Controller. It provides full control over the mobile device - you can connect and disconnect the device from the PC, easily tap the screen by clicking over a specific point displayed in the PDA Controller’s screen, "press" any functional buttons on the device by clicking the appropriate buttons in the panel, and so on. You can also quickly refresh the device’s screen images displayed in the panel and capture these images by clicking special buttons on the panel’s Actions toolbar.
It is easy to record mobile application tests using the PDA Controller. It provides full functionality for working with the device as if you were holding it in your hand - all without leaving TestComplete.
PDA Controller

Image 6 - PDA Controller

PDA File Manager

The PDA File Manager allows you to work with the mobile devices’ file systems with ease. For instance, you can copy and move files to the mobile device directly from the testing environment:
PDA File Manager

Image 7 - PDA File Manager

PDA Registry Editor

TestComplete provides easy access to the mobile device’s registry, so you do not need any other registry editors for working with the device’s system. You can access the registry using the PDA Registry Editor panel in TestComplete. It is a full-fledged registry editor, so you can add, delete and modify registry entries directly from TestComplete without leaving your testing environment. You can also add registry entries to the Favorites list in the editor for quick navigation.
PDA Registry Editor

Image 8 - PDA Registry Editor

Conclusion

TestComplete has a lot of useful features that help to make testing mobile applications easier, faster and less costly. Recording mobile application tests and test execution is simple with TestComplete. It is easy to work with the connected device: copy and move files to it, modify registry entries and so on. With TestComplete you can concentrate on your testing tasks, not on how to create them. You do not need any other service tools to work with the device - TestComplete has a full set of instruments that allow working with the device with ease. If you haven’t tried TestComplete 8, or if you are interested in testing mobile applications with TestComplete, download and try it today.

No comments: