Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Automated Mobile Acceptance Testing Presentation - mdevcon 2013
Pete Hodgson
March 15, 2013
Programming
2
360
Automated Mobile Acceptance Testing Presentation - mdevcon 2013
Pete Hodgson
March 15, 2013
Tweet
Share
More Decks by Pete Hodgson
See All by Pete Hodgson
phodgson
3
200
phodgson
3
480
phodgson
8
460
phodgson
4
480
phodgson
7
1.1k
phodgson
87
3.9k
phodgson
2
280
phodgson
2
180
phodgson
1
320
Other Decks in Programming
See All in Programming
hanakla
2
3k
danilop
0
130
trajchevska
2
390
yaamaa
0
450
muttsu_623
0
540
azdaroth
0
140
yokaze
0
420
akatsukinewgrad
0
220
chichou
1
860
shigeruoda
0
490
akatsukinewgrad
0
210
mizdra
7
4.9k
Featured
See All Featured
maltzj
500
36k
akmur
252
19k
cherdarchuk
71
260k
malarkey
119
16k
imathis
478
150k
tanoku
86
8.5k
roundedbygravity
84
7.8k
searls
204
35k
trallard
13
650
destraynor
146
19k
keithpitt
401
20k
orderedlist
PRO
329
35k
Transcript
Automated Acceptance Testing mdevcon 2013
Pete Hodgson @ph1
None
we are hiring
None
examples are iOS same principles across platforms
Straw Poll
Straw Poll AppCode ~ or ~ XCode
Straw Poll IntelliJ ~ or ~ Eclipse
None
we all test
why do we test?
does it work?
does it still work?
does it work on ?
testing provides feedback
why don’t we test?
manual testing can be expensive
manual testing can be tedious
“Computers are designed to do simple repetitive tasks. The second
you have humans doing repetitive tasks, all the computers get together late at night and laugh at you…” - Neal Ford
so automate your tests (where it makes sense)
testing provides feedback
testing provides feedback automated better
testing provides feedback automated faster
testing provides feedback automated broader
testing provides feedback automated uniform
None
types of automated testing
Mobile App End User Backend Services
Unit Test Mobile App End User Backend Services
Mobile App End User Backend Services Integration Test
Acceptance Test Mobile App End User Backend Services
Acceptance Test Mobile App End User Backend Services The App
Acceptance Unit Integration
demo!
None
I love it! How do I do it?
iOS Frank Calabash KIF Appium UIAutomation
Android Calabash Robotium Instrumentation
Mobile Web iPhoneDriver/AndroidDriver chromedriver headless WebDriver webdriver-user-agent
None
the UI testing triad
None
select a bit o UI
select a bit o UI simulate interaction with it
select a bit o UI simulate interaction with it inspect
state o it
UI select interact inspect
UI select interact inspect
UI select interact inspect
user simulation touch(...) type_into_keyboard(...) set_orientation(...) double_tap(...) tap_and_hold(...) drag_with_initial_delay(...)
simulating gestures
UI select interact inspect
UI select interact inspect
touch(...)
touch(...) what?
None
view selectors
view selectors a little language to specify which views you
are interested in e.g. CSS or XPath
demo!
good view selectors == sustainable tests
accessibility is your best friend
record-and-playback test suites are not sustainable
UI select interact inspect
UI select interact inspect
demo!
interact inspect select UI
putting it all together
demo!
thanks. questions?
more questions? @ph1 http://blog.thepete.net phodgson@thoughtworks.com me, at the bar feedback:
rate.thepete.net this deck: slides.thepete.net