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
Espresso Test Recorder
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
magiepooh
June 17, 2016
Technology
720
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.5k
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
870
Customize Error Message
magiepooh
0
900
Kotlin入門
magiepooh
2
1.9k
Adjust Full Screen
magiepooh
2
560
How to get size of NavigationBar and StatusBar
magiepooh
1
1.8k
Other Decks in Technology
See All in Technology
EventBridge Connection
_kensh
5
650
ブロックチェーン / Blockchain
ks91
PRO
0
110
protovalidate-es を導入してみた
bengo4com
0
150
Rubyで音を視る
ydah
1
110
Microsoft Build Keynoteふりかえり
tomokusaba
0
110
ポケモンの型をTypeScriptの型システムで表現してみた
subroh0508
0
350
AIにフローを作らせようとして挫折した話
hamatsutaichi
0
220
作って終わりにしない タイミーのセマンティックレイヤー育成の現在地
chanyou0311
0
370
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
370
サプライチェーンセキュリティの空白地帯 - 信頼できる”依存性”の未来を考える
rung
PRO
2
780
Building applications in the Gemini API family.
line_developers_tw
PRO
0
2.1k
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
1.9k
Featured
See All Featured
Building the Perfect Custom Keyboard
takai
2
790
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
150
Balancing Empowerment & Direction
lara
6
1.1k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
WENDY [Excerpt]
tessaabrams
11
38k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2k
[SF Ruby Conf 2025] Rails X
palkan
2
1.1k
Fireside Chat
paigeccino
42
3.9k
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.