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
5分でわかる! AWS Device Farmでテストしよう!
Search
Sato Takeshi
March 13, 2017
Technology
2
1.6k
5分でわかる! AWS Device Farmでテストしよう!
iOS Test Night #3
https://testnight.connpass.com/event/49561/
の発表資料。
Device Farmのやり方について発表しました。
Sato Takeshi
March 13, 2017
Tweet
Share
More Decks by Sato Takeshi
See All by Sato Takeshi
Swift愛好会 の 思い出
satotakeshi
0
70
Xcode 15, Swift 5.9で変わる開発体験
satotakeshi
3
2.8k
Meet passkeys
satotakeshi
2
330
What's new in Vision
satotakeshi
0
1.4k
Swift Concurrency入門
satotakeshi
10
4.9k
複数端末のつらさを乗り越えてiOS UITestを実行
satotakeshi
1
370
Xcodegenを個人アプリに導入
satotakeshi
3
730
SwiftUIで作る開閉式メニュー
satotakeshi
2
2.9k
swift-snapshot-testingでVisual Testingを効率化
satotakeshi
0
1.2k
Other Decks in Technology
See All in Technology
10年もののバグを退治した話
n_seki
0
150
知っててうれしい SQL について
greendrop
0
110
今年一年で頑張ること / What I will do my best this year
pauli
1
190
最近のSfM手法まとめ - COLMAP / GLOMAPを中心に -
kwchrk
8
1.8k
ヤプリQA課題の見える化
gu3
0
160
生成AI × 旅行 LLMを活用した旅行プラン生成・チャットボット
kominet_ava
0
130
いまからでも遅くないコンテナ座学
nomu
0
210
「隙間家具OSS」に至る道/Fujiwara Tech Conference 2025
fujiwara3
4
630
AI×医用画像の現状と可能性_2024年版/AI×medical_imaging_in_japan_2024
tdys13
1
1.3k
【令和最新版】ロボットシミュレータ Genesis x ROS 2で始める快適AIロボット開発
hakuturu583
2
1.5k
Storage Browser for Amazon S3を触ってみた + α
miura55
0
110
20240513 - 框裡框外_文學院學生如何在AI世代安身立命 @ 淡江大學
dpys
0
640
Featured
See All Featured
RailsConf 2023
tenderlove
29
970
Statistics for Hackers
jakevdp
797
220k
The Power of CSS Pseudo Elements
geoffreycrofte
74
5.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
It's Worth the Effort
3n
183
28k
YesSQL, Process and Tooling at Scale
rocio
170
14k
Building an army of robots
kneath
302
44k
Making the Leap to Tech Lead
cromwellryan
133
9k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
BBQ
matthewcrist
85
9.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Transcript
5ͰΘ͔Δ! AWS Device FarmͰς ετ͠Α͏ʂ 20173݄13 ࠤ౻߶࢜ 5ͰΘ͔Δ! AWS Device
FarmͰςετ͠Α͏ʂ 2017/3/13 1
ࣗݾհ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 2
ࠤ౻߶࢜ (@hatakenokakashi) MAMORIOגࣜձࣾͰiOSΤϯδχΞΛ ͍ͯ͠·͢ɻ Swiftͱ͓༑ୡͰ͢ɻ Ruby,JS(ES6)ยࢥ͍Ͱ͢ɻ ϒϩάɿhttp://blog.personal- factory.com/ 5ͰΘ͔Δ! AWS
Device FarmͰςετ͠Α͏ʂ 2017/3/13 3
ςετͭΒ͍ͬ͢ΑͶ! 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 4
։ൃͲΜͲΜਐΉ ͦͷͨͼʹશΛςετ͠ͳ͖Ό͍ ͚ͳ͍ɻ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 5
ͦ͜ʹཱ͔ͪΔ • ༻ҙ͕େม • ૿େ͢Δςετ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13
6
Ͳ͏͠Α͏(´ɾТɾʆ) 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 7
ͦ͜Ͱ Device Farmͷ ग़൪Ͱ͢ʂ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 8
Device FarmͬͯԿʁ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 9
Device Farm • AWSͷεϚϑΥ&WebΞϓϦ͚ςετࣗಈԽαʔϏε • iOSɺAndroid֤֤OSόʔδϣϯΛऔΓἧ͑Δ • ࠷ॳͷ߹ܭ250·Ͱແྉɻޙ0.17 USD/ 5ͰΘ͔Δ!
AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 10
๛ͳछྨ&OSόʔδϣϯ • iPhone4s-iPhone7PlusͷiOS7.1͔ΒiOS10·Ͱ • iPad2/iPad miniୈҰੈ/iPad Pro • Android΄΅ओཁͳΛͦΖ͍͑ͯΔʢͨͩ͠άϩʔόϧ൛) •
AndroidຊΩϟϦΞ͕ΧελϚΠζ͍ͯ͠ΔͷͰ ҙʂ https://aws.amazon.com/jp/device-farm/device-list/ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 11
XCUIͰͬͯΈΔ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 12
XCUIͰͬͯΈΔ 1. ΞϓϦΛϏϧυ͢Δ 2. XCUIΛϏϧυ͢Δ 3. Payload.ipaϑΝΠϧΛͭ͘Δ 4. Device FarmʹΞϓϦͱςετΛొ࣮͠ߦ
5. ςετ݁ՌΛΈΔ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 13
ΞϓϦΛϏϧυ͢Δ XcodeͷProduct -> ArchiveͰΞʔΧΠ ϒ OrganaizerϖʔδͰExport 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ
2017/3/13 14
Save for Development DeploymentΛ બ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13
15
Device SupportΛExport one app for all compatible devicesʹબ 5ͰΘ͔Δ! AWS
Device FarmͰςετ͠Α͏ʂ 2017/3/13 16
XCUIͰςετίʔυΛॻ͘ import XCTest class MAMORIOUITests: XCTestCase { override func setUp()
{ super.setUp() continueAfterFailure = false XCUIApplication().launch() } func test1Tutorial() {} } 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 17
XCUIͷઆ໌ • XCUIApplicationͰΞϓϦऔಘͯ͠ • XCUIElementQueryͰUI෦Λݕࡧ ͯ͠ • XCUIElementͰλοϓͳͲUIૢ࡞Λ ͢Δ let
app = XCUIApplication() app.buttons["startButton"].tap() 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 18
XCUIElementQueryͰݕࡧ Ͱ͖ΔΑ͏ʹ accessibilityIdentifierΛઃఆ͠·͠ΐ ͏ɻ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 19
XCUIΛϏϧυ͢Δ Product > Build For > Testing 5ͰΘ͔Δ! AWS Device
FarmͰςετ͠Α͏ʂ 2017/3/13 20
[UITestName]-Runner.appΛऔಘ ϏϧυύεΛݟΔ /Users/<UserName>/Library/ Developer/Xcode/DerivedData/ <App Name>-xxxxxxxxxxxxxxxxx/ Build/Products/Debug-iphoneos/ 5ͰΘ͔Δ! AWS Device
FarmͰςετ͠Α͏ʂ 2017/3/13 21
ιʔεҰཡͷ Products >ɹ[APPNAME].app ΛӈΫϦοΫͰFinderΛ։͍ͯྑ͍ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 22
Payload.ipaϑΝΠϧΛͭ͘Δ 1. PayloadσΟϨΫτϦΛ࡞Γ[UITestName]-Runner.appΛೖΕ Δɻ 2. ͦͷޙʹzipͰPayloadσΟϨΫτϦΛѹॖ͢Δɻ 3. Payload.zipΛPayload.ipaʹϦωʔϜ͢Δɻ 5ͰΘ͔Δ! AWS
Device FarmͰςετ͠Α͏ʂ 2017/3/13 23
mkdir Payload mv [UITestName]-Runner.app Payload zip Payload.zip Payload mv Payload.zip
Payload.ipa 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 24
Device FarmʹΞϓϦͱςε τΛొ࣮͠ߦ Create a new project ΛΫϦοΫ Create a
new run ΛΫϦοΫ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 25
ΞϓϦͷipaϑΝΠϧ ΛΞοϓϩʔυ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 26
XCTest UIΛબΜͰ Payload.ipaΛΞοϓ ϩʔυ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 27
DeviceΛબͼ·͢ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 28
DeviceͷৄࡉΛઃఆ • Ճͷใ • Ңܦ • ϩέʔγϣϯ • ௨৴ঢ়ଶ 5ͰΘ͔Δ!
AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 29
DeviceͷλΠϜΞ τઃఆΛ͢Δ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 30
ςετ݁ՌΛΈΔ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 31
Α͍ςετϥΠϑΛա͝ ͠·͠ΐ͏✨ 5ͰΘ͔Δ! AWS Device FarmͰςετ͠Α͏ʂ 2017/3/13 32