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
3.9k
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
41
iOSアプリ開発を始めよう
tamaki
0
45
詳解xcresult.pdf
tamaki
0
240
メルペイでのリグレッションテスト自動化推進のこれまでとこれから
tamaki
0
590
What do you want to test with UI Test v2
tamaki
2
780
JPQRによって変わる日本のQRコード決済
tamaki
0
180
What's New in Testing
tamaki
1
58
What do you want to test with UI Test
tamaki
5
1.6k
How to control state in UI Test
tamaki
4
2.4k
Other Decks in Technology
See All in Technology
「スニダン」開発組織の構造に込めた意図 ~組織作りはパッションや政治ではない!~
rinchsan
3
550
FrontDoorとWebAppsを組み合わせた際のリダイレクト処理の注意点
kenichirokimura
1
510
アクセシビリティを考慮したUI/CSSフレームワーク・ライブラリ選定
yajihum
2
1k
プロンプトエンジニアリングでがんばらない-Agentic Workflow へ-近藤憲児
kenjikondobai
2
260
反実仮想機械学習とは何か
usaito
PRO
11
4.5k
Janus
bkuhlmann
1
490
よく聞くけど使ったことないソフトウェアNo.1 KafkaとSnowflake
foursue
4
350
プロトタイピングによる不確実性の低減 / Reducing Uncertainty through Prototyping
ohbarye
5
380
Meta Quest 3 で動く桜マシマシ WebXR アプリを IBM Cloud Code Engine と Babylon.js で作った話
1ftseabass
PRO
0
120
エンジニア候補者向け資料2024.04.24.pdf
macloud
0
3.3k
Building Dashboards as a Hobby
egmc
0
110
ここが嬉しいABAC ここが辛いよABAC #再解説+補足編
masahirokawahara
1
270
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
260
12k
YesSQL, Process and Tooling at Scale
rocio
164
13k
Clear Off the Table
cherdarchuk
84
310k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
Unsuck your backbone
ammeep
663
57k
The MySQL Ecosystem @ GitHub 2015
samlambert
243
12k
A Modern Web Designer's Workflow
chriscoyier
689
190k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
78
42k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
[RailsConf 2023] Rails as a piece of cake
palkan
23
3.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
322
20k
Facilitating Awesome Meetings
lara
42
5.6k
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ͷͲͪΒ͕ಈ ͍ͯΔ͔ҙࣝ͢Δඞཁͳ͍ɻ
Ҏ্