Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
iOS Testing with Appium at Gilt
Search
Matt Isaacs
August 20, 2014
Programming
0
140
iOS Testing with Appium at Gilt
Talk given at the Appium Roadshow. Projective Space, New York.
Matt Isaacs
August 20, 2014
Tweet
Share
More Decks by Matt Isaacs
See All by Matt Isaacs
Better Recursion With Swift
ontherocks
1
600
Mobile Testing at Gilt
ontherocks
0
48
Other Decks in Programming
See All in Programming
著者と進める!『AIと個人開発したくなったらまずCursorで要件定義だ!』
yasunacoffee
0
140
チームをチームにするEM
hitode909
0
330
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
310
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
710
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
110
SwiftUIで本格音ゲー実装してみた
hypebeans
0
380
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
160
AWS CDKの推しポイントN選
akihisaikeda
1
240
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
410
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
150
ID管理機能開発の裏側 高速にSaaS連携を実現したチームのAI活用編
atzzcokek
0
230
AIコーディングエージェント(Manus)
kondai24
0
180
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
56
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Producing Creativity
orderedlist
PRO
348
40k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Agile that works and the tools we love
rasmusluckow
331
21k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
GitHub's CSS Performance
jonrohan
1032
470k
Typedesign – Prime Four
hannesfritz
42
2.9k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
70k
Transcript
iOS Testing with Appium Details learned the hard way
What is Gilt?
Luxe brands up to 60% off
Inventory Changes Daily Sales are available for a limited time.
Sales start at noon ET. New sales start daily at
12pm, with bonus sales at 9pm.
Gilt Mobile Covers apps + mobile infrastructure. Team of 12
(And counting). QA Team offsite.
iPhone • iPad • Android
Previously form Gilt Mobile Test benefits need to be balanced
with effort. UI Tests offer the most benefit to QA. Increased revenue → Quality focus. Really hard to change established practices.
What are we automating? Full sanity - Can customers login
in and buy stuff? iPhone only. For now.
Run daily at 19:15 EST… Tests take a long time.
Can conflict with customers.
…On Production Infrastructure is quite complex. Infrastructure is constantly evolving.
Impractical to mock.
Why Appium? We’ve already built Selenium infrastructure. We already have
Selenium skills.
All part of the Philosophy! No SDK to compile in.
Strong open source community. Cross-platform support.
No libs? What is this sorcery? Appium serves as a
webdriver proxy for UIAutomation. Part of instruments.
Accessibility makes it work UIAutomation drives apps via iOS Accessibility.
Elements located by accessibility labels.
Where do we start? We already have the Selenium fundamentals.
We’re already mostly accessible. Lets build some page objects.
Convention on top of Actions and Locators. Page validated during
construction. Actions return new page objects. What are Page Objects?
When to wait? - Page object construction. Page objects represent
state. Actions → State transitions Solves some reliability issues
Sore points. Accessibility. Overlays and pass-throughs. Partially obscured controls. Execution
time.
None
About that Accessibility thing You’re probably not accessible enough. Container
views hide their contents!
Accessibility isn't overhead Good for your users and your tests.
UIAccessibilityIdentifier is for tests. Implementing UIAccessibilityContainer helps.
That’s a lot of work Accessibility feels like overhead. Rich
Views → Complex Page Objects
But wait! There’s more work! We still need to write
the actual tests. Page Objects might require some debugging.
Debug Page Objects? Test code needs tests?
(╯°□°)╯︵ ┻━┻ Too. Much. Work.
Issue amplified by culture No problem in enterprise. Mobile seems
to be different.
– NSHipster “Objective-C developers have, for the most part, remained
relatively apathetic to Unit Testing.”
Issue amplified by culture App features take priority. Testing delegated
to QA. QA is doing a great job!
Artists don’t Test! They might if it doesn’t get in
the way.
The hardest part Getting the team involved.
Not knocking the team People are busy. They understand the
benefits of testing. Benefits need to be balanced with effort.
The Takeaway The overhead involved is a developer deterrent. Appium
tests are not yet integral to our process. But Appium is only getting better.
Buy some cool stuff!! Preferably on mobile.
Give us a visit tech.gilt.com @gilttech
Thanks! Matt Isaacs @haveahennessy