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
910
Customize Error Message
magiepooh
0
930
Kotlin入門
magiepooh
2
2k
Adjust Full Screen
magiepooh
2
580
How to get size of NavigationBar and StatusBar
magiepooh
1
1.9k
Other Decks in Technology
See All in Technology
LLM-as-a-Judgeは本当に信頼できるのか――評価器を評価する話
taka_aki
3
1.1k
書き手が人でもAIでも正しくなる道、SREを埋め込んだDeveloper Platform / tech drivers day8
chmikata
4
680
QAエンジニアがSoutherを使ってみたの〜10分でわかるSouther〜
mhlyc
0
120
フィンテック養成勉強会#68
finengine
0
240
小規模OSSモデルは サイバーセキュリティ業務に どこまで使えるか
bbrbbq
0
290
「作れる」と「リリースできる」の間にあったもの── PdMを外して見えた、PdMがやるべき仕事/Buildable ≠ Shippable: What Removing the PM Taught Me About the PM’s Job
yappli_developers
0
250
AWSDirectConnectの構築の進め方を整理してみた
masa_my
1
170
2026-10-24 JAWS JAWS-UG 茨城 #18 IAM Policy Autopilotってなにさ。terraform planからIAM Policyつくれるの? / What's IAM Policy Autopilot
masasuzu
0
140
What Is JetBrains Air
x5gtrn
PRO
0
170
dbt Semantic Layerで進めるenechainのデータ民主化
akizhou
1
260
[FECONF-2026] 신대륙을 향한 카카오페이증권 프론트엔드 항해기 (이주승)
l1ghthouse
0
150
Draft AIエージェントの トークン消費を最小化する 8つの原則
kinopeee
5
1.7k
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
610
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
The Language of Interfaces
destraynor
162
27k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
270
Scaling GitHub
holman
464
140k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
Side Projects
sachag
456
43k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
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.