Tuesday, October 20, 2009

Learning How To Test Mobile Device Applications (Part 1) - Palm webOS

I recently visited Palm and our friends there gave us a Palm webOS book - signed by the author Mitch Allen (VP, Software CTO at Palm)!  Very cool.  While reading this book I thought I would use this opportunity to start a HOWTO series on learning to test mobile device apps, and model it after the process we used in our labs - develop apps to learn how to test them. Basically, we took testers through the process of setting up a development environment, compiling a simple app and then installing and testing that app.

We'll start with Palm webOS and then cover the iPhone and Android platforms.  The place to start for any of these platforms is the software development toolkit, or SDK.  And in the case of webOS, as the book points out, the SDK is available for free.  It's called the Mojo SDK and it's available at http://developer.palm.com or can be directly downloaded here.

This SDK provides you development tools, sample code, along with tutorials and reference documents. All great resources for a developer and serves to inform and educate testers as well. We recommend that testers download and install the SDK and then use any of the example apps as their first project. That keeps the fear factor down since no code is written. And since each of the mobile device developers provide an emulator, you don't even need an actual device to learn how to compile and test applications.

Most people start out with something called the "Hello World" application that each SDK invariably offers as the starter application. And webOS is no different. In fact, there's an entire tutorial that describes how to download, compile and install their Hello World app. Once you get the Hello World app to compile and install on your emulator (again, the tutorial explains how to run the emulator), then you can set about to try some tests and learn about the tools that will help you test on actual devices.

On page 30 of the book, there's a paragraph about Testing and Debugging (yes, just a paragraph - but this is a developer book), where the author reinforces the idea of using the emulator during development and testing, and for debugging. Many of the tools described in the book and at Palm's developer website are mainly for developers, but testers should become proficient with any tool that logs information, if for nothing else than to provide a log file with each reported bug. In particular, get to know the palm-log tool. It displays log messages from an application on the emulator or USB-connected webOS device. You can also use palm-log to display the installed applications, which is useful for getting the ID of the application to log.

Here's a checklist I'd recommend for any tester wanting to learn more about webOS apps and how to test them:
  1. Download the Palm webOS SDK
  2. Install it on your favorite OS
  3. Compile the Hello World application and run it in the emulator
  4. Setup palm-log to understand how to capture log files
It's actually very straightforward and best of all, you'll be able to say you've compiled, run and tested a webOS app, as well as collected its log file, without spending any money and without even owning an actual device.

Next we'll look at how to do this for the iPhone.


Post a Comment