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
670
Automated Mobile Acceptance Testing Presentation - mdevcon 2013
Pete Hodgson
March 15, 2013
Tweet
Share
More Decks by Pete Hodgson
See All by Pete Hodgson
A Journey Into Feature Toggles - OSCON Austin 2017
phodgson
5
480
Test-driven Client-side JS
phodgson
5
750
Functional Reactive JavaScript
phodgson
8
710
different.js - Forward JS 2014
phodgson
4
750
Railsconf2014
phodgson
7
1.3k
Building Your Own Lightsaber
phodgson
101
6k
iOS Unit Testing Workshop
phodgson
3
440
Multi-platform Mobile with Calatrava - May 2013
phodgson
2
400
Unit testing with Kiwi - CocoaConf San Jose 2013
phodgson
1
550
Other Decks in Programming
See All in Programming
労務ドメインを快適に開発する方法 / How to Comfortably Develop in the Labor Domain
yuki21
1
250
事業フェーズの変化に対応する 開発生産性向上のゼロイチ
masaygggg
0
200
Kotlin 2.0 and Beyond
antonarhipov
2
150
unique パッケージから学ぶ interning と weak reference @ Asakusa.go#3
karamaru
2
800
Android開発以外のAndroid開発経験の活かしどころ
konifar
2
960
LangGraphでのHuman-in-the-Loopの実装
os1ma
3
1.1k
月間4.5億回再生を超える大規模サービス TVer iOSアプリのリアーキテクチャ戦略 - iOSDC2024
techtver
PRO
1
900
Developer Joy == Developer Productivity (really!)
hollycummins
1
170
仮想ファイルシステムを導入して開発環境のストレージ課題を解消する
segadevtech
2
540
【TID2024】模擬講義:プログラマと一緒にゲームをデザインしてみよう!
akatsukigames_tech
0
630
あなたのアプリ、ログはでてますか?あるいはログをだしてますか? (Funabashi.dev用 軽量版)
uzulla
2
120
Using Livebook to build and deploy internal tools @ ElixirConf 2024
hugobarauna
0
250
Featured
See All Featured
Bash Introduction
62gerente
608
210k
In The Pink: A Labor of Love
frogandcode
139
22k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
89
16k
The Invisible Side of Design
smashingmag
295
50k
Building Adaptive Systems
keathley
36
2.1k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
5
480
The Cult of Friendly URLs
andyhume
76
6k
Navigating Team Friction
lara
183
13k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
25
3.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
401
65k
Side Projects
sachag
451
42k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
8.9k
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
[email protected]
me, at the bar feedback:
rate.thepete.net this deck: slides.thepete.net