Monday August 20, 2012

Acceptance Testing iOS Applications With Frank

Frank is a nifty tool to write acceptance tests for iOS applications in Cucumber, a popular tool for web application testing that was originally written in Ruby. I’ve had the opportunity to meet Frank’s maintainer, Pete Hodgson, and I like where he’s taking this.

Acceptance testing is more than just asserting correctness. It’s about trying to build tests around a common shared language with the stakeholders of the app. The test passes once everyone signs off on the shared language and the behavior. Dialects like Cucumber try to help with this by mapping English steps to executable instructions with reusable pieces, parameters, and the like. Frank brings some of that power to iOS.

You’ll have to install a Rubygem to get this to work, and there can be some pain to integrate it into complicated Xcode projects, but the Frank Google Group is quite responsive should you need help. If you’re brave enough to venture out into the Ruby/Cucumber world, this could be a good tool in your box of tricks.