Post on 08-May-2015
description
Friday, 18 February 2011
TestingiOS apps
with Frank
Stewart Gleadow
Friday, 18 February 2011
why have tests?
Friday, 18 February 2011
why have tests?
Friday, 18 February 2011
Testing Approaches
Friday, 18 February 2011
Friday, 18 February 2011
“It seems to be working”
Friday, 18 February 2011
“Nothing is obviously broken”
Friday, 18 February 2011
Testing iPhone Apps
iPhone App
Friday, 18 February 2011
iPhone App
Server
Friday, 18 February 2011
iPhone App
ServerDone
Friday, 18 February 2011
Does MVC help?
Friday, 18 February 2011
UIView
UIViewController
Model
ServerFriday, 18 February 2011
UIView
UIViewController
Model
ServerFriday, 18 February 2011
UIView
UIViewController
Model
ServerFriday, 18 February 2011
UIView
UIViewController
Model
Server
Done
Friday, 18 February 2011
UIViewUIViewController
Friday, 18 February 2011
UIViewUIViewController
50% of iPhone code?
Friday, 18 February 2011
Potential Testing Tools
hmmm...
Friday, 18 February 2011
Potential Testing Tools
• Frank and UISpec hmmm...
Friday, 18 February 2011
Potential Testing Tools
• Frank and UISpec
• Sikuli
hmmm...
Friday, 18 February 2011
Potential Testing Tools
• Frank and UISpec
• Sikuli
• FoneMonkey
hmmm...
Friday, 18 February 2011
Potential Testing Tools
• Frank and UISpec
• Sikuli
• FoneMonkey
• Brominet or iCuke
hmmm...
Friday, 18 February 2011
Potential Testing Tools
• Frank and UISpec
• Sikuli
• FoneMonkey
• Brominet or iCuke
• UIAutomation
hmmm...
Friday, 18 February 2011
UISpec
Friday, 18 February 2011
UISpec
- (void)itShouldHaveDefaultUsers;{ [[app.tableView.label text:@"User"] should].exist;}
Friday, 18 February 2011
UISpec
Friday, 18 February 2011
Cucumber
Friday, 18 February 2011
Cucumber
Friday, 18 February 2011
Scenario: [name of the scenario]
Cucumber
Friday, 18 February 2011
Scenario: [name of the scenario]
Given [some statement]
Cucumber
Friday, 18 February 2011
Scenario: [name of the scenario]
Given [some statement]
When [some action]
Cucumber
Friday, 18 February 2011
Scenario: [name of the scenario]
Given [some statement]
When [some action]
Then [some expected result]
Cucumber
Friday, 18 February 2011
Scenario: [name of the scenario]
Given [some statement]
When [some action]
Then [some expected result]
And [another expectation]
Cucumber
Friday, 18 February 2011
to be perfectly Frank...
Friday, 18 February 2011
Tests
iPhoneApp
Friday, 18 February 2011
Tests
iPhoneApp
UISpecCucumber / Ruby
?
Friday, 18 February 2011
FrankServerTests
iPhoneApp
UISpecCucumber / Ruby
Friday, 18 February 2011
FrankDriver
FrankServerTests
iPhoneApp
UISpecCucumber / Ruby
Friday, 18 February 2011
FrankDriver
FrankServerTests
iPhoneApp
UISpecCucumber / Ruby
“frankly”
Friday, 18 February 2011
Frankusesaccessibilitylabels
Friday, 18 February 2011
frankly.my_dear do |i| dont_give_a_damn!end
Friday, 18 February 2011
UISpec
UIQuery
Frank
Frankly
frankly.my_dear do |i| dont_give_a_damn!end
Friday, 18 February 2011
[app.tableView.label text:@"User"];
UISpec
UIQuery
Frank
Frankly
frankly.my_dear do |i| dont_give_a_damn!end
Friday, 18 February 2011
[app.tableView.label text:@"User"];
UISpec
UIQuery
Frank
Frankly app tableView label text:’User’
frankly.my_dear do |i| dont_give_a_damn!end
Friday, 18 February 2011
Friday, 18 February 2011
Frank Steps
Scenario: default users should be present at startup
When I start the app
Then I should see “Users”
Friday, 18 February 2011
Frank Steps
Scenario: default users should be present at startup
When I start the app
Then I should see “Users”
Then /^I should see "([^\"]*)"$/ do |expected_mark|
check_element_exists("view marked:'#{expected_mark}'")
end
Friday, 18 February 2011
Demo
Friday, 18 February 2011
The RoadAhead
Friday, 18 February 2011
Stewart Gleadow
sgleadow@thoughtworks.com
@stewgleadow
Friday, 18 February 2011
References• github.com/moredip/frank & http://groups.google.com/group/frank-discuss
• code.google.com/p/uispec & http://groups.google.com/group/uispec
• softnoise.wordpress.com/2010/11/14/ios-setting-up-a-test-environment/
• cukes.info
• cuke4ninja.com
• The RSpec Book
Friday, 18 February 2011
Images
• http://www.myfreewallpapers.net/movies/pages/frankenstein-02.shtml
• http://www.workbloom.net/wp-content/uploads/2009/09/road-ahead.jpg
• http://upload.wikimedia.org/wikipedia/commons/archive/0/07/20090605224904!IMac_aluminium.png
• http://themachoresponse.blogspot.com/2010/03/frankly-my-dear-i-dont-give-damn.html
Friday, 18 February 2011