Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Espresso Test Recorder
Search
magiepooh
June 17, 2016
Technology
730
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Espresso Test Recorder
magiepooh
June 17, 2016
More Decks by magiepooh
See All by magiepooh
今さら角丸のTransition
magiepooh
0
1.6k
Google I/O Extended Tokyo 2018
magiepooh
2
1.7k
APIのデータのマッピングを 約18倍速くした話
magiepooh
2
1.1k
まだAPI定義管理で消耗してるの?〜Swaggerを用いた大規模アプリ時代のAPI定義管理とコードジェネレート〜
magiepooh
38
19k
RootBeer
magiepooh
0
890
Customize Error Message
magiepooh
0
920
Kotlin入門
magiepooh
2
2k
Adjust Full Screen
magiepooh
2
570
How to get size of NavigationBar and StatusBar
magiepooh
1
1.9k
Other Decks in Technology
See All in Technology
JSONataとAWS Step Functionsで目指すRuntimelessな世界
mu7889yoon
0
290
AIエージェントの一手は 誰も見ていない - Falco拡張OSS「Prempti」とeBPFで サーバーレス実行基盤を二層防御する
keitah
0
320
`t*(42&t>>10)`だけで音楽が鳴る、Swiftで実装するBytebeat / iOSDC Japan 2026
yutailang0119
0
120
beyond jj: config & tools ecosystem
indirect
0
5.4k
絵ではじめるKubernetesセキュリティ
aoi1
4
690
目の前の楽しいが人生を変える - コミュニティの螺旋の歩き方と楽しむコツ / change your life
soudai
PRO
5
650
人間はどの意思決定を手放せるのか
kawasima
15
7.5k
The Knowledge Spine: A Machine-Executable Ontology for Governed Marketing Activation
vananth22
0
110
その Lambda、8分で 管理者権限まで奪われます
k1nakayama
6
3.3k
AIで社員の自主発信に広報目線を組み込む
_mossann_t
0
130
Von-Neumann Machines, Dreams & The Futures of IT
ufried
0
110
HHKBエバンジェリストになる方法
941
0
110
Featured
See All Featured
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
530
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Producing Creativity
orderedlist
PRO
348
41k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
Scaling GitHub
holman
464
140k
How to build a perfect <img>
jonoalderson
1
6k
New Earth Scene 8
popppiees
4
2.6k
The Curse of the Amulet
leimatthew05
3
15k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Transcript
Espresso Test Recorder @magiepooh
About me @magiepooh @magie_pooh Takuma Fujita
Company AbemaTV, Inc. (Cyber Agent, Inc.)
What’s Espresso?
Espresso • Testing UI tool
Test
Test [Disadvantage] Maintenance Laziness [Advantage] Clean design Reduce bugs
Espresso Test Recorder
Espresso Test Recorder • GoogleIO 2016 • Record Espresso UI
tests simply by using your app as a normal user
Demo
None
RecyclerView
Can’t detect scroll event…
None
None
None
ViewInteraction appCompatButton = onView( allOf(withId(R.id.button_recycler), withText("RecyclerView"), withParent(allOf(withId(R.id.activity_main), withParent(withId(android.R.id.content)))), isDisplayed())); appCompatButton.perform(click());
ViewInteraction recyclerView = onView(allOf(withId(R.id.recycler_view), isDisplayed())); recyclerView.check(matches(isDisplayed())); // >>> Developers need write this line to scroll RecyclerView onView(withId(R.id.recycler_view)).perform(RecyclerViewActions.scrollToPosition(19)); // <<< ViewInteraction appCompatButton2 = onView(allOf(withId(R.id.text_recycler), withText("position: 19"), isDisplayed())); appCompatButton2.perform(click());
ViewInteraction appCompatButton = onView( allOf(withId(R.id.button_recycler), withText("RecyclerView"), withParent(allOf(withId(R.id.activity_main), withParent(withId(android.R.id.content)))), isDisplayed())); appCompatButton.perform(click());
ViewInteraction recyclerView = onView(allOf(withId(R.id.recycler_view), isDisplayed())); recyclerView.check(matches(isDisplayed())); // >>> Developers need write this line to scroll RecyclerView onView(withId(R.id.recycler_view)).perform(RecyclerViewActions.scrollToPosition(19)); // <<< ViewInteraction appCompatButton2 = onView(allOf(withId(R.id.text_recycler), withText("position: 19"), isDisplayed())); appCompatButton2.perform(click());
ViewPager
Can’t detect scroll event…
None
Conclusion • Espresso Test Recorder is currently experimental.