Frank is 'Selenium for native iOS apps'. It allows you to write automated acceptance tests which verify the functionality of your native iOS app.
Check out Frank in action! This short screencast shows a sample iPhone app being exercised in the iPhone simulator by a set of cucumber tests.
Watch a short presentation on Frank This is a recording of a 30 minute presentation Pete Hodgson did at the San Francisco Selenium meetup.
Watch another presentation on Frank Stew Gleadow also did a Frank presentation, this one for the Melbourne Cocoaheads group.
Getting started is easy. You just need to install a ruby gem, create a new target for your app in XCode, and start writing cucumber tests. For detailed instructions check out tutorial/Tutorial.md.
- Provide support for automating functional testing of an iOS app.
- Support Cucumber primarily, but create an architecture which allows other tools such as JBehave or Fitnesse to also drive iOS tests.
- Work on both the simulator and device.
- Provide tools and techniques to support BDD and automated regression testing.
- Embedded web app called Symbiote which allows inspection of live iOS UI as it is running, to ease the difficulty in writing complex selectors. Here's a screencast demonstrating Symbiote.
- Record Frank test runs as movies to see how the UI is responding throughout your script. We've found this very useful when included as a CI build artifact.
- Leverage UISpec's UIQuery syntax to easily select specific GUI elements within your app.
There are also slides from a lightning talk given by Pete about Frank.
We're always happy to accept documentation improvements, bug fixes and new features. Please fork this repo and send a pull request. Feedback, suggestions and questions are always most welcome on the mailing list.