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
WebDriverAgentってなに?
Search
Shingo Tamaki
January 19, 2017
Technology
4
4.3k
WebDriverAgentってなに?
WebDriverAgentってなに?
Appium1.6.xの気になるところを調べてみた
Shingo Tamaki
January 19, 2017
Tweet
Share
More Decks by Shingo Tamaki
See All by Shingo Tamaki
AIエージェントを使ったiOSアプリ開発を試してみた
tamaki
0
20
沖縄モバイルアプリ開発勉強会#1
tamaki
0
96
iOSアプリ開発を始めよう
tamaki
0
150
詳解xcresult.pdf
tamaki
0
320
メルペイでのリグレッションテスト自動化推進のこれまでとこれから
tamaki
0
700
What do you want to test with UI Test v2
tamaki
2
870
JPQRによって変わる日本のQRコード決済
tamaki
0
260
What's New in Testing
tamaki
1
58
What do you want to test with UI Test
tamaki
5
1.8k
Other Decks in Technology
See All in Technology
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
130
2024.02.19 W&B AIエージェントLT会 / AIエージェントが業務を代行するための計画と実行 / Algomatic 宮脇
smiyawaki0820
13
3.4k
明日からできる!技術的負債の返済を加速するための実践ガイド~『ホットペッパービューティー』の事例をもとに~
recruitengineers
PRO
3
400
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
140
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
740
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
2k
組織貢献をするフリーランスエンジニアという生き方
n_takehata
1
1.3k
【Developers Summit 2025】プロダクトエンジニアから学ぶ、 ユーザーにより高い価値を届ける技術
niwatakeru
2
1.4k
Amazon S3 Tablesと外部分析基盤連携について / Amazon S3 Tables and External Data Analytics Platform
nttcom
0
130
Moved to https://speakerdeck.com/toshihue/presales-engineer-career-bridging-tech-biz-ja
toshihue
2
740
Classmethod AI Talks(CATs) #16 司会進行スライド(2025.02.12) / classmethod-ai-talks-aka-cats_moderator-slides_vol16_2025-02-12
shinyaa31
0
110
エンジニアの育成を支える爆速フィードバック文化
sansantech
PRO
3
1.1k
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
137
6.8k
Optimizing for Happiness
mojombo
376
70k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
550
Java REST API Framework Comparison - PWX 2021
mraible
28
8.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
How to train your dragon (web standard)
notwaldorf
91
5.8k
GraphQLとの向き合い方2022年版
quramy
44
13k
Designing for Performance
lara
604
68k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
174
51k
How STYLIGHT went responsive
nonsquared
98
5.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
Transcript
WebDriverAgentͬͯͳʹʁ Appium1.6.xͷؾʹͳΔͱ͜ΖΛௐͯΈͨ
ࣗݾհ ۄ৴ޛ • גࣜձࣾ Origami • iOS Engineer • Favorite
iOS framework • HomeKit/XCUITest/XCTest/Core Bluetooth
ిࢠ࡞ͷษڧձͬͯ·͢ iOSΤϯδχΞͷͨΊͷిࢠ࡞ษڧձ h"ps:/ /www.facebook.com/groups/1698775433676484/
͡Ίʹ
UIςετࣗಈԽͯ͠·͔͢ʁ
XCUITestΛͬͨࣄ͕͋Δ or ͍ͬͯΔ
AppiumΛ͍ͬͯΔ or ࢼͨ͜͠ͱ͕͋Δ
ͦͷଞͷUIςεςΠϯάϑϨʔϜϫʔΫΛ ͬͨࣄ͕͋Δʁ • KIF • Carabash • EarlGray • etc
Appium is Կʁ • ϚϧνϓϥοτϑΥʔϜ(iOS/Android/WindowsPhone) • UIςεςΟϯάϑϨʔϜϫʔΫ • ༷ʑͳςεςΟϯάϑϨʔϜϫʔΫ͕બՄೳ •
ϓϩμΫτίʔυʹมߋͳ͘ಋೖՄೳ • SeleniumϥΠΫͳ༷ͷͨΊɺ͠Έ͍͢
None
ಋೖ࣮ଟ͘ݟ͔͚·͢
ಋೖ࣮ଟ͘ݟ͔͚·͢
ಋೖ࣮ଟ͘ݟ͔͚·͢
ಋೖ࣮ଟ͘ݟ͔͚·͢
ಋೖ࣮ଟ͘ݟ͔͚·͢
ࠓ͞ͳ͍ࣄ • Appiumͷ۩ମతͳಋೖํ๏ʹ͍ͭͯ • UIςετͷಋೖίετӡ༻ʹ͍ͭͯ
࠷ۙͷAppiumͷมԽʹ͍ͭͯ
ͦͷલʹiOSͷมԽͷ͓͞Β͍
UIAutoma)on • Xcode6·Ͱͷඪ४UIςεςΟϯάϑϨʔϜϫʔΫ • instrumentsͷςϯϓϨʔτͷҰͭ • ςετίʔυjavascriptͰهड़
XCUITest • Xcode7͔Β৽ͨʹՃ͞ΕͨUITestͷϑϨʔϜϫʔΫ • XCTestಉ༷ʹTest BundleΛϓϩδΣΫτʹՃ͢Δ • Objec6ve-C or Swi=ͰUIςετॻ͘͜ͱ͕Մೳ
• XCTRunner͕ςετରͷΞϓϦͷUIૢ࡞Λߦ͏
XCUITest • XCTRunner͕ςετରͷΞϓϦͷUI ૢ࡞Λߦ͏ fbsimctl 3435BE60-1111-2222-333-6C1E2B4C 4A77 list_apps | grep
bundle_id "bundleid" = "com.apple.test.XCUITestSampleUITests- Runner"; ... "bundleid" = "com.apple.mobilesafari"; "bundle_id" = "com.hoge.XCUITestSample";
Architecture (Before 1.6.0) UIAutoma)onʹΑΔ࣮ߦ 1. ͖ͳςεςΠϯάϑϨʔϜϫʔΫ 2. ֤ݴޠͰ༻ҙ͞ΕͨAppiumClient࣮ͰJSON Wire Protocolੜ
͠ૹ৴ 3. AppiumServer͕υϥΠόʔܦ༝ͰUIAutoma)on࣮ߦ
None
Architecture (a,er 1.6.0) XCUITestʹΑΔ࣮ߦ 1. ͖ͳςεςΠϯάϑϨʔϜϫʔΫ 2. ֤ݴޠͰ༻ҙ͞ΕͨAppiumClient࣮ͰJSON Wire Protocolੜ
͠ૹ৴ 3. AppiumServer͕υϥΠόʔܦ༝ͰXCUITest࣮ߦ
None
!
!ͳΔ΄Ͳ
!Θ͔ΒΜ
Θ͔ΒΜϙΠϯτ ͦͦͷUIAutoma)onjsͰίʔυॻ͍࣮ͯߦ ͭ·Γ֎෦͔ΒiOS SimulatorΛૢ࡞ͦͦग़དྷΔ࡞Γ → Θ͔Δ (appium-ios-driver࣮ࡍ͏ͪΐͬͱෳࡶͳ࡞Γʹͳͬ ͯ·͢)
None
Θ͔ΒΜϙΠϯτ XCUITestΛ֎෦͔Βૢ࡞͢Δʁ → Θ͔ΒΜ XCUITestͬͯϓϩδΣΫτʹTestόϯυϧೖΕͯςετίʔυ࣮ ߦͤ͞Δײ͡Ͱ͢ΑͶʁ Appiumͷྑ͞ͷҰͭϓϩμΫτίʔυʹखΛՃ͑ͣʹUIςετ ͕ग़དྷΔࣄͷͣʁΊͪΌͬͨʁ XCUITestͬͯϓϩδΣΫτͷ֎͔Βίϯτϩʔϧग़དྷΔͷʁ!
ௐͯΈͨɻ
1.6.0͔ΒXCUITestαϙʔτͨ͠Αͱɻ h"ps:/ /github.com/appium/appium/releases
৽ͨʹՃ͞ΕͨDriver appium-xcuitest-driver h"ps:/ /github.com/appium/appium-xcuitest-driver#appium- xcuitest-driver
ߋʹͦͷதͰ༻͞Ε͍ͯΔWebDriverAgent h"ps:/ /github.com/facebook/WebDriverAgent h"ps:/ /www.youtube.com/watch?v=Ea6YGFxBxY
WebDriverAgent • WebDriverαʔόʔ࣮ • ىಈ͢ΔͱΞϓϦWebDriverͱͯ͠APIΛίʔϧग़དྷΔαʔό ͱͯ͠ىಈ͠·͢ • WebDriverAgentΛ͏ࣄͰ֎෦͔Βୟ͚ΔUI Test RunnerΛ࣮
ݱ͍ͯ͠Δ • UIͷૢ࡞ʹ͍ͭͯPrivateAPIΛ༻͍ͯ͠Δͱͷࣄ
None
ҰXCUITestΛࢥ͍ग़ͯ͠ΈΔɻ
!
!ͳΔ΄Ͳ
!ೲಘ
·ͱΊ • WebDriverAgentWebDriverαʔό࣮ • WebDriverAgentUI Test RunnerͷΘΓͱͯ͠ΞϓϦΛૢ࡞ ͢ΔࣄͰ͜Ε·ͰͷAppiumͱ(΄΅)มΘΒ͵ڍಈΛ࣮ݱ͍ͯ͠ Δ •
ςετίʔυॻ͘ʹUIAutoma:on/XCUITestͷͲͪΒ͕ಈ ͍ͯΔ͔ҙࣝ͢Δඞཁͳ͍ɻ
Ҏ্