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.2k
WebDriverAgentってなに?
WebDriverAgentってなに?
Appium1.6.xの気になるところを調べてみた
Shingo Tamaki
January 19, 2017
Tweet
Share
More Decks by Shingo Tamaki
See All by Shingo Tamaki
沖縄モバイルアプリ開発勉強会#1
tamaki
0
82
iOSアプリ開発を始めよう
tamaki
0
120
詳解xcresult.pdf
tamaki
0
290
メルペイでのリグレッションテスト自動化推進のこれまでとこれから
tamaki
0
680
What do you want to test with UI Test v2
tamaki
2
840
JPQRによって変わる日本のQRコード決済
tamaki
0
240
What's New in Testing
tamaki
1
58
What do you want to test with UI Test
tamaki
5
1.8k
How to control state in UI Test
tamaki
4
2.5k
Other Decks in Technology
See All in Technology
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
990
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
110
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
210
TypeScript、上達の瞬間
sadnessojisan
46
13k
複雑なState管理からの脱却
sansantech
PRO
1
140
いざ、BSC討伐の旅
nikinusu
2
780
第1回 国土交通省 データコンペ参加者向け勉強会③- Snowflake x estie編 -
estie
0
130
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
370
Engineer Career Talk
lycorp_recruit_jp
0
160
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.6k
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
Featured
See All Featured
Done Done
chrislema
181
16k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
120
How GitHub (no longer) Works
holman
310
140k
Gamification - CAS2011
davidbonilla
80
5k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
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ͷͲͪΒ͕ಈ ͍ͯΔ͔ҙࣝ͢Δඞཁͳ͍ɻ
Ҏ্