Interview with Matt Gallagher on Programatic UI Testing

By
On January 19, 2009

Matt Gallagher

In this latest episode of Mobile Orchard’s iPhone Developer podcast, we interview Matt Gallagher, the blogger behind the superb advanced Cocoa programming site “Cocoa With Love.”

Matt’s recently been working on how to simulate touch events and programatically drive the iPhone UI for user interface testing. In this interview, he describes how it’s done, talks about implementing Apple’s hidden/private touch APIs, and points out that, under the covers, iPhone apps run in the sim are actually native Mac apps.

You can listen using the Flash player above, download the MP3, or subscribe to the iPhone Developer Podcast using the instructions at the bottom of this post.

For easy scanning of the interview, the following indexes shows what was covered and when:

  • 1:30 – the three things you need to do programatic interface testing
  • 2:00 – recursively traversing the UI elements and representing their data structures for testing
  • 6:00 – serializing dictionaries to plists, manipulating plists like a DOM
  • 9:00 – simulating touch events
  • 10:30 – the chain of methods that make up touch events
  • 12:00 – using Class-Dump to generate ObjC header files for a binary
  • 12:15 – re-creating Apple’s hidden/internal APIs
  • 13:30 – plist as domain-specific language
  • 14:30 – running iPhone applications natively on the mac for testing minus the simulator

Keep up to date with our iPhone developers’ podcast

Subscribe to our iPhone Development Podcast in one of two great ways:

  1. Use the podcast’s feed with the feed app of your choice: https://podcast.mobileorchard.com/feed/podcast/
  2. Subscribe using iTunes by clicking here.

We hope you enjoy the podcast, and if you have any suggestions of who we should interview (or want to be interviewed yourself), use our Contact page or leave a comment against this post. Thanks for listening!

0 responses to “Interview with Matt Gallagher on Programatic UI Testing”

  1. Chralle says:

    Thanks for this! 🙂

  2. Dr Nic says:

    That’s a sweet summary of the testing code. I so badly need to sit down and try to get this working.

    BTW, since this podcast is mostly about one of Matt’s articles, perhaps post a link to that article above.

  3. Dan Grigsby says:

    @drnic: added the links!