Wednesday, May 27, 2009

iPhone 3.0 OS Testing Tips

All App Store testing and review will occur on iPhone OS 3.0 to prepare for a smooth transition this summer, and incompatible applications won't be approved. Here's an excerpt of what Apple's has emailed to developers:
Beginning today, all submissions to the App Store will be reviewed on the latest beta of iPhone OS 3.0. If your app submission is not compatible with iPhone OS 3.0, it will not be approved.

Existing apps in the App Store should already run on iPhone OS 3.0 without modification, but you should test your existing apps with iPhone OS 3.0 to ensure there are no compatibility issues. After iPhone OS 3.0 becomes available to customers, any app that is incompatible with iPhone OS 3.0 may be removed from the App Store.
For many developers this presents a dilemma has to how to test existing iPhone OS 2.x apps to make sure their updates will continue to be accepted before iPhone OS 3.0 is generally available. Most small developers have limited devices to develop and test on, and once you install iPhone OS 3.0, you can't go back. The folks over at The Apple Core, quote this from Apple: "Devices updated to iPhone 3.0 beta can not be restored to earlier versions of iPhone OS . Devices will be able to upgrade to future beta releases and the final iPhone OS 3.0 software."

Here's what we recommend for testing purposes:

Wednesday, May 20, 2009

PhoneGap: Cross-Platform Mobile Device Development Solution

Nitobi's PhoneGap is an open source solution designed to give web developers JavaScript access to popular mobile device features, like the camera, GPS, the accelerometer, local SQLite databases and more, without having to write full applications.

Here's what the Nitobi developers have to say about PhoneGap at their website:
PhoneGap is an development environment for mobile application developers who want to write their code once and deploy it to multiple smartphones with as few headaches as possible. PhoneGaps supports or will support iPhone, Android, Blackberry, Palm's Pre, and Windows Mobile.

I found this informative video on PhoneGap that explains the advantages of using it and even talks about how some current iPhone apps have been build using PhoneGap:

Wednesday, May 13, 2009

iPhone Test Tools - iPhone Forensics

Featured in the video below is Jonathan Zdziarski, author of iPhone Open Application Development: Write Native Objective-C Applications for the iPhone, iPhone SDK Application Development: Building Applications for the AppStore and iPhone Open Application Development: Write Native Applications Using the Open Source Tool Chain. He helped lead the effort to port the first open source applications, and taught developers how to write applications for the iPhone before Apple introduced its own SDK. His prior work has been, a forensics manual, has been distributed exclusively to law enforcement. Jonathan frequently consults with law enforcement agencies and assists forensic examiners in their investigations.

In the video below, Jonathan demonstrates how to install his custom forensics toolkit on any existing model iPhone and send a raw disk image to a desktop machine. He also shows you how to recover files specific to the iPhone including deleted keyboard caches, photos, web objects, and much more. His other iPhone development videos on YouTube are Getting the iPhone Open Source Tool Chain, and iPhone Forensic 101: Bypassing the iPhone Passcode.

Wednesday, May 6, 2009

Squish Support For Automated GUI Testing on Apple's iPhone and iPod Touch

A company called froglogic has announced that it's automated GUI testing tool, Squish, will support the testing of Cocoa Touch based applications on iPhone and iPod Touch devices and simulators. Here's an excerpt from their press release:
Cocoa Touch provides an abstraction layer over iPhone OS, the operating system used by the iPhone and iPod Touch. Cocoa Touch is based on the Cocoa API and toolset used for building software for Mac OS X computers.

Squish's distributed network architecture enables tests to be controlled from desktop PCs, or from a server, while the application under test is executed and tested remotely, for example, on other PCs, or on embedded devices, such as the iPhone or iPod Touch.

A prototype of Squish for Cocoa Touch has been completed. A final version of Squish for Cocoa Touch will be included in the upcoming Squish 4.0 release.
Based on this press release, it looks like this tool will test apps directly on the an iPhone or iPod touch, although the accompanying picture appears to be running a test on the iPhone simulator. It will be interesting to see how they enable their GUI testing tool on actual iPhone and iPod touch devices.