Automated interactive testing for i os
Upcoming SlideShare
Loading in...5
×
 

Automated interactive testing for i os

on

  • 1,080 views

Mobile March 2012

Mobile March 2012

Statistics

Views

Total Views
1,080
Views on SlideShare
780
Embed Views
300

Actions

Likes
0
Downloads
2
Comments
0

1 Embed 300

http://mobilemarchtc.com 300

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Automated interactive testing for i os Automated interactive testing for i os Presentation Transcript

  • Automated Interactive Testing for iOS Rob Bajorek - Code 42 Software rob@code42.com
  • Topics• Interactive testing• The tools• Demo and walkthrough
  • Interactive Testing
  • Unit tests - (void)testClearNonPersistentCredentialsDoesNotClearPrivatePasswordPersistent { [self helper_setTestCredentialsPersistent:YES]; [self helper_setUpAccountTypePrivatePasswordPersistent:YES]; CPConfigService *cs = [[CPConfigService alloc] init]; [cs clearNonPersistentCredentials]; GHAssertEqualStrings(cs.dataPassword, testDataPassword, @"private password incorrectly cleared (%@)", cs.dataPassword);}- (void)testClearNonPersistentCredentialsClearsPrivatePasswordNonPersistent { [self helper_setTestCredentialsPersistent:YES]; [self helper_setUpAccountTypePrivatePasswordPersistent:NO]; CPConfigService *cs = [[CPConfigService alloc] init]; [cs clearNonPersistentCredentials]; GHAssertNil(cs.dataPassword, @"private password not cleared (%@)", cs.dataPassword);}
  • Unit tests can pay forthemselves over time
  • Unit tests are easy to automate
  • Continuous Integration
  • What’s missing?
  • Interactive testing is...• time-consuming• boring• error-prone
  • Automate yourinteractive testing
  • You still need people
  • The Tools• UI Automation• CoffeeScript• Accessibility• Zucchini
  • UI Automation• UI Automation Reference Collection
  • CoffeeScript• http://coffeescript.org
  • Accessibility• Accessibility Programming Guide for iOS
  • Zucchini• http://www.zucchiniframework.org
  • Natural language scriptThen on the "Browse" screen: Download file "Minneapolis.jpg" Tap cell "Minneapolis.jpg" in the tableThen on the "Viewer" screen: Verify navigation bar title is "Minneapolis.jpg" Tap "Back"Then on the "Browse" screen: Tap "Home"Then on the "Home" screen: Tap "Sign Out"
  • Demo• Brief install advice• Project setup• Example “smoke test”• Walkthrough
  • Prerequisites• See instructions at www.zucchiniframework.org• Homebrew / MacPorts• ImageMagick• CoffeeScript
  • Installing Zucchini• https://github.com/playup/zucchini• https://github.com/rajbeniwal/zucchini-demo
  • Demo and Walkthrough
  • Conclusion• Start at www.zucchiniframework.org• Use the UI Automation Reference for help• Get to know UIAElement• ‘Show all elements’: -> view.logElementTree()
  • Thank you!