Upgrade to Pro — share decks privately, control downloads, hide ads and more …

UI Testing with Frank

UI Testing with Frank

Keith Pitt

March 24, 2011

More Decks by Keith Pitt

Other Decks in Programming


  1. UI Testing Approaches • Testing the application yourself using the

    simulator or your device • Getting others to test the application using their own devices • Automated testing
  2. What tools are there? • Sikuli (image analysis) • Fonemonkey

    (record and playback) • UISpec (tests are written in Objective C) • iCuke (project not being developed)
  3. Frank • A bridge between Cucumber and UISpec • A

    “Frank Driver” that sends HTTP requests from Cucumber to a “Frank Server” that is installed in the Application • The “Frank Server” executes UISpec queries against the application, returns the result
  4. UISpec • UISpec is a Behaviour Driven Development framework for

    the iPhone that provides a full automated testing solution that drives the actual iPhone UI. • It is modelled after the very popular RSpec for Ruby. • Written in Objective C
  5. -(void)itShouldHaveDefaultUsers { //Check that all default users are in list

    [[app.tableView.label text:@"Larry Stooge"] should].exist; [[app.tableView.label text:@"Curly Stooge"] should].exist; [[app.tableView.label text:@"Moe Stooge"] should].exist; }
  6. Cucumber • Cucumber is a tool that executes plain-text functional

    descriptions as automated tests. • Written in Ruby • Created originally for use with Ruby on Rails. • Command line tool • Written specifically for BDD
  7. Feature: Search courses In order to ensure better utilization of

    courses Potential students should be able to search for courses Scenario: Search by topic Given there are 240 courses which do not have the topic "biology" And there are 2 courses A001, B205 that each have "biology" as one of the topics When I search for "biology" Then I should see the following courses: | Course code | | A001 | | B205 |