Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Automated Mobile Acceptance Testing Presentatio...
Search
Pete Hodgson
March 15, 2013
Programming
2
740
Automated Mobile Acceptance Testing Presentation - mdevcon 2013
Pete Hodgson
March 15, 2013
Tweet
Share
More Decks by Pete Hodgson
See All by Pete Hodgson
Migratory Patterns - KubeCon Salt Lake City, 2024
phodgson
0
71
A Journey Into Feature Toggles - OSCON Austin 2017
phodgson
5
580
Test-driven Client-side JS
phodgson
5
820
Functional Reactive JavaScript
phodgson
8
780
different.js - Forward JS 2014
phodgson
4
810
Railsconf2014
phodgson
7
1.4k
Building Your Own Lightsaber
phodgson
104
6.3k
iOS Unit Testing Workshop
phodgson
3
510
Multi-platform Mobile with Calatrava - May 2013
phodgson
2
490
Other Decks in Programming
See All in Programming
大LLM時代にこの先生きのこるには-ITエンジニア編
fumiyakume
7
3.3k
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
6
1.4k
Serving TUIs over SSH with Go
caarlos0
0
110
MCP調べてみました! / Exploring MCP
uhzz
2
2.3k
Orleans + Sekiban + SignalR でリアルタイムWeb作ってみた
tomohisa
0
200
PHP で学ぶ OAuth 入門
azuki
1
230
DevOpsDaysTokyo2025社内副業で他部門へ_越境_して見えた価値再定義最大1か月のリードタイムを10分に短縮したDevOps実践.pdf
susumutomita
0
110
プロフェッショナルとしての成長「問題の深掘り」が導く真のスキルアップ / issue-analysis-and-skill-up
minodriven
8
1.9k
Boost Your Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
570
一緒に働きたくなるプログラマの思想 #QiitaConference
mu_zaru
77
19k
Jakarta EE Meets AI
ivargrimstad
0
590
2ヶ月で生産性2倍、お買い物アプリ「カウシェ」4チーム同時改善の取り組み
ike002jp
1
110
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
For a Future-Friendly Web
brad_frost
177
9.7k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
550
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
23
2.7k
KATA
mclloyd
29
14k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
104
19k
The Invisible Side of Design
smashingmag
299
50k
Designing for humans not robots
tammielis
253
25k
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