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
ハードウェア連携が必要なプロダクトにおける自動テストの書き方
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Tomoki Yamashita
March 10, 2026
Technology
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ハードウェア連携が必要なプロダクトにおける自動テストの書き方
Tomoki Yamashita
March 10, 2026
More Decks by Tomoki Yamashita
See All by Tomoki Yamashita
STORES_決済端末2ってAndroidなんでしょ__ほんとうかな__.pdf
tomorrowkey
0
83
モバイルとRubyとわたし
tomorrowkey
0
89
BiDiってなんだ?
tomorrowkey
2
820
文字列操作の達人になる ~ Kotlinの文字列の便利な世界 ~ - Kotlin fest 2025
tomorrowkey
2
2.1k
Ebisu mobile #11 - Predictive Backに対応する
tomorrowkey
1
180
AI協同時代にモバイルエンジニアが備えるべき開発環境の話
tomorrowkey
2
460
5分で完全理解するNav3との向き合い方
tomorrowkey
0
330
テストを楽に書きたい
tomorrowkey
2
460
Gradle Build Scanを使ってビルドのことを知ろう potatotips #87
tomorrowkey
2
1.5k
Other Decks in Technology
See All in Technology
AIがGISを代替する日:〜すべてをAIが創る時代に、私たちがFOSS4Gに関わる意味〜
lehupa
1
210
You Have Agency(サンキュー、Ruby)
snoozer05
PRO
5
680
素人でもできた!AIを使った短編小説創作入門
delhi09
PRO
0
310
AIエージェント時代、Kaggleにどう取り組むか
takanao
2
500
20261031_IoTLT_vol140_kitazaki_v1.pdf
kitazaki
0
170
Oracle Database Security 詳細解説
oracle4engineer
PRO
1
250
続・ソフトウェアアーキテクトのための意思決定術: Decision Readiness, Revisited — When AI Changes the Economics of Software Architecture
snoozer05
PRO
5
1.3k
AIエージェントの監視、思考を見るか行動を見るか / Monitoring AI Agents: Thoughts or Actions
yusukeshimizu
1
120
1週間、Opus封印でお願いします
kintotechdev
1
460
AX時代の自治体支援リソース再配分と役割分担の再構成:戦略とロードマップ(概要)
sishi2026
0
190
AI時代に求められる優秀なTechLeadの振る舞い
pospome
4
4.9k
増え続けるプロダクトの品質をどう担保するか。ProductSpecとTypeScriptによる取り組み
joere
3
380
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.8k
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
280
How to Talk to Developers About Accessibility
jct
2
610
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Designing Powerful Visuals for Engaging Learning
tmiket
1
630
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
2
1.2k
Navigating Team Friction
lara
192
16k
Claude Code のすすめ
schroneko
67
230k
We Have a Design System, Now What?
morganepeng
55
8.4k
Transcript
ハードウェア連携が必要なプロダクトにおける 自動テストの書き方 2026.03.10 Ebisu.mobile #13 〜STORESのモバイルテストの現在地〜 @tomorrowkey
自己紹介 @tomorrowkey <Tomoki Yamashita> Android Engineer, STORES, Inc. ❤️ Kotlin,
Ruby, Java, Swift, TypeScript/JavaScript … Android 16年生 決済2年生 2 / 14
背景 STORESはいまテストに力を入れています。 どんなテストツールを使っているかはプロダクトによって効果的なものを採用し ています。 Espresso, XCUITest, Swift Testing, Appium, Maestro
STORES 決済ではAppiumを使用してAndroid, iOS共通のE2Eテストを構築してい ます。 3 / 14
STORES 決済の仕組み 1. 決済金額を入力する 2. 決済方法選択画面でクレジットカードを選択する 3. クレジットカードを決済端末にかざす 4. 決済完了することを確認する
4 / 14
Done is better than perfect 5 / 14
自動化のレベル 6 / 14
なにをあきらめるか テストケース 自動化が難しいところはコア機能なので、そのテストケースを諦めてしまった ら、自動テストの価値がない 完全自動化 自動テストのオートメーションと人間の操作による、半自動化 7 / 14
できたもの 0:00 8 / 14
どうやったのか Appiumのテストコードです。 1 def wait_pay_by_contactless 2 say(' クレジットカードをタッチしてください') 3 driver.wait_true
do 4 Page::App::ReceiptPage.new(driver, platform).title == ' 決済完了' 5 end 6 end 1 def say(message, voice: 'Kyoko', rate: 200) 2 return unless RUBY_PLATFORM.include?('darwin') 3 4 options = { 5 '--voice' => voice, 6 '--rate' => rate, 7 }.compact.map { |k, v| "#{k} '#{v}'" }.join(' ') 8 9 Process.detach(spawn("say #{options} '#{message}'")) 10 end 9 / 14
技術スタック Appium Appium Clients appium/ruby_lib_core Appium Driver appium/appium-xcuitest-driver appium/appium-uiautomator2-driver RSpec
10 / 14
現在地 iOS, Androidの共通のテストコードがAppiumで書かれている 代表的な決済方法のテストが実装されている クレジットカード決済 電子マネー決済 QRコード決済 11 / 14
「得られたもの」と「見えてきた課題」 得られたもの 再現が可能なテストが実装された テスト実行に伴走するだけでも、手動テストより楽に感じる テスト内容が録画されるの便利 課題 テスト実行のハードルを感じている すでに要因は分析済みで解決に向けて動き始めている 複数人数でテスト実行するので結果を突合するための仕組みがほしい プラットフォーム間での仕様の差異が見えてきた
おそい 12 / 14
まとめ 明確な高難度の課題があったとしても、できるところまで一旦やってみるといい ぞ 13 / 14
14 / 14