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
テストも開発もするモバイルエンジニアのためのXCUITest/Espressoのすすめ
Search
woshidan
December 11, 2017
Programming
0
4.4k
テストも開発もするモバイルエンジニアのためのXCUITest/Espressoのすすめ
システムテスト自動化カンファレンス2017-2 LT資料
woshidan
December 11, 2017
Tweet
Share
More Decks by woshidan
See All by woshidan
AWSを用いたWebサービスの負荷試験のTips
woshidan
2
12k
IAMロールの使用と必要なポリシー
woshidan
2
1.2k
マーケティングオートメーションツールとアプリエンジニア -プッシュ通知・お知らせダイアローグの運用自動化のためのお仕事-
woshidan
0
2.1k
DNSの話2 ~ Webアプリエンジニアの一人ネットワーク勉強会
woshidan
1
660
DNSの話1 ~ Webアプリエンジニアの一人ネットワーク勉強会
woshidan
0
590
DNSキャッシュポイズニング ~ Webアプリエンジニアの一人ネットワーク勉強会
woshidan
0
620
テーブルを作ってみる話
woshidan
3
110k
メモリリークに関するウワサの今昔
woshidan
6
30k
元Railsエンジニアが 現場で引き継いで使ってみたKotlin
woshidan
1
3.1k
Other Decks in Programming
See All in Programming
Catch Up: Go Style Guide Update
andpad
0
240
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
230
XP, Testing and ninja testing ZOZ5
m_seki
3
780
CSC509 Lecture 08
javiergs
PRO
0
220
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
510
One Enishi After Another
snoozer05
PRO
0
130
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
870
CSC509 Lecture 07
javiergs
PRO
0
240
ALL CODE BASE ARE BELONG TO STUDY
uzulla
25
6.5k
Devvox Belgium - Agentic AI Patterns
kdubois
1
130
モテるデスク環境
mozumasu
1
100
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
2
620
Featured
See All Featured
Building an army of robots
kneath
306
46k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
Being A Developer After 40
akosma
91
590k
Build your cross-platform service in a week with App Engine
jlugia
232
18k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Building Adaptive Systems
keathley
44
2.8k
The Pragmatic Product Professional
lauravandoore
36
7k
Writing Fast Ruby
sferik
629
62k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Code Review Best Practice
trishagee
72
19k
Transcript
ςετ։ൃ͢ΔϞόΠϧΤϯδχ ΞͷͨΊͷXCUITest/Espressoͷ͢ ͢Ί γεςϜςετࣗಈԽΧϯϑΝϨϯε2017-2 @woshidan
ࣗݾհ w !XPTIJEBO 5XJUUFS*% !XPTIJEBOP w ݩ"OESPJEΞϓϦΤϯδ χΞ w
Ұ͘Β͍લ͔Βʑล ΓͷελʔτΞοϓͰϞό Πϧ༻ϥΠϒϥϦͷςετ ࣗಈԽͳͲΛ͍ͯ͠·͢
ࠓ͓͢͠Δ͜ͱ w ϞόΠϧΞϓϦํ໘ͷ&&ςετʹ͍ͭͯ w ݩ։ൃͷਓ͕"QQJVNΛࢼͯ͠Έͨͱ͖ͷײ w "OESPJE4UVEJP9$PEFΛ͑ΔਓͳΒ &TQSFTTP9$6*5FTU͍͍ w ࣌ؒ͋Ε
&TQSFTTP5FTU3FDPSEFS 9$PEF6*5FTU3FDPSEFSͷ͍ํ
"QQJVNΛͬͯΈͨͱ͖ͷ w "QQJVN J04"OESPJE ΛͬͯΈͨͱ͖ͷ
"QQJVNΛͬͯΈͨͱ͖ͷ w "QQJVN J04"OESPJE ͰͷϝϦοτ w ҰͭͷίʔυͰJ04"OESPJE྆ํͷಈ͖͕ςετͰ͖Δ w ෳͷςετ༻ϓϥοτϑΥʔϜΛԼଆͰར༻͓ͯ͠Γ෯ ͍"OESPJEJ04ͷόʔδϣϯʹରԠ͍ͯ͠Δ
w ෯͍ݴޠͷυϥΠό͕ଘࡏ͠ɺࣗͷ͖ͳݴޠͰ͔͚ Δ w "QQJVN4UVEJPͳͲΛར༻͢Ε6*ཁૉʹৄ͘͠ͳͯ͘ 6*5FTU༻ͷίʔυੜ͕Ͱ͖Δ
w ҰͭͷίʔυͰJ04"OESPJE྆ํͷಈ͖͕ς ετͰ͖Δ w ϓϥοτϑΥʔϜ͝ͱͷΨΠυϥΠϯʹԊ͏ ߹ɺͦ͜·Ͱ྆04Ͱ6*͕Ұக͠ͳ͍ w BDDFTTJCJMJUZJE7JFXͷJE 7JFXͷ֊ ϨϕϧͰҰக͠ͳ͍ͱίʔυ͕ͳ͔ͳ͔
ڞ௨ԽͰ͖ͳ͍ "QQJVNΛͬͯΈͨͱ͖ͷ
w ෳͷςετ༻ϓϥοτϑΥʔϜΛԼଆͰར༻͓ͯ͠Γ෯ ͍"OESPJEJ04ͷόʔδϣϯʹରԠ͍ͯ͠Δ w ڥઃఆ͕ͦΕͳΓʹେมͰ"QQJVNͷઃఆΛݕূͯ͠ ͍ͨͱࢥͬͨΒͦͷԼଆͷπʔϧʹৄ͘͠ͳͬͯ͠·͏ʜ w J04Լͷόʔδϣϯ͕ૣ͘Γ͍͢"OESPJEͰ ܥΛͬͯྑͦ͞͏ʹͳ͖ͬͯͨ "1*ҎԼͷγΣΞ͕
w IUUQTEFWFMPQFSBOESPJEDPNBCPVUEBTICPBSETJOEFYIUNM "QQJVNΛͬͯΈͨͱ͖ͷ
w ෯͍ݴޠͷυϥΠό͕ଘࡏ͠ɺࣗͷ͖ͳݴޠ Ͱ͔͚Δ w "OESPJEJ04ͷΞϓϦΛ։ൃͯ͠Δਓʹͱͬͯ "OESPJEJ04Λ։ൃͰ͖ΔݴޠͰॻ͚ΔͷͰ͋ Γ͕͍ͨ w ͕ɺ֤ݴޠͷυϥΠόͷಈΛؾʹͨ͠Γपล πʔϧ
4FMFOJVN֤ݴޠͷϏϧυπʔϧ Λֶ श͢Δඞཁ͕͕͋ͬͯͦͬͪਏ͍ʜ "QQJVNΛͬͯΈͨͱ͖ͷ
w "QQJVN4UVEJPͳͲΛར༻͢Ε6*ཁૉʹৄ͘͠ͳͯ͘ 6*5FTU༻ͷίʔυੜ͕Ͱ͖Δ w "OESPJE4UVEJP9$PEFͰಉ͡Α͏ͳ͜ͱ͕Ͱ͖·͢ w "OESPJE4UVEJPͰ&TQSFTTP5FTU3FDPSEFS ͕͑ΔΑ͏ʹͳ͍ͬͯͨ w 1SFWJFXʹ͋ͬͨͷͷҰফ͔͑ͨͱࢥ͕͍ͬͨ
ͭͷ·ʹ͔෮׆ͯͨ͠ w 9$PEFd9$PEF6*5FTU3FDPSEFS͕͑Δ "QQJVNΛͬͯΈͨͱ͖ͷ
"QQJVNݸਓతײ·ͱΊ w ϞόΠϧΞϓϦΛॻ͍͍ͯΔਓ͕&&ςετ Λ࢝ΊΔ߹ʹ&TQSFTTP9$6*5FTUબ ࢶʹೖΕ͍͍ͯͷͰ
w &TQSFTTP9$6*5FTUΛͬͨ߹Ͳ͏ͳ ͷ͔
9$6*5FTU&TQSFTTPʹ͍ͭͯ w Α͍ͱ͜Ζͷ w "OESPJE4UVEJP9$PEFΛ͍ͬͯΔͷͰ͋Εڥߏ ஙίετ͕͍ w ؒʹೖ͍ͬͯΔπʔϧ͕ͳ͘ಈ࡞͕͔ͳΓ҆ఆ͍ͯ͠Δ w ։ൃ࣌ͱςετ࣌Ͱ*%&ΛΓସ͑Δඞཁ͕ͳ͍ͷͰɺς
ετमਖ਼ͷྲྀΕ͕εϜʔζ w 9$PEF"OESPJE4UVEJPͷσόοΨͷεςοϓ࣮ߦ ελοΫτϨʔε͕ར༻Ͱ͖ΔͷͰσόοάָ͕
9$6*5FTU&TQSFTTPʹ͍ͭͯ w ΊΜͲͦ͘͞͏ͳͱ͜Ζͷ w ಉ͡ϓϩδΣΫτʹίʔυΛஔ͘͜ͱʹͳΓ ͍͢ͷͰίʔυཧͷϑϩʔΛ૬ஊ͢Δඞཁ͋Γ w J04"OESPJEͦΕͧΕͰςετ࣮ํ๏Λ֮͑ Δඞཁ͋Γ w
9$6*5FTU &TQSFTTP͕ରԠ͍ͯ͠ͳ͍όʔδϣ ϯखಈςετͱΈ߹Θͤͯߦ͏ඞཁ͕͋Δ
͜͜·Ͱͷ·ͱΊ w ϞόΠϧΞϓϦํ໘ͷ&&ςετʹ͍ͭͯ w ݩ։ൃͷਓ͕"QQJVNΛࢼͯ͠Έͨͱ͖ͷײ w ։ൃଆ͔Βݟͯಋೖίετ͕ॏ͍"QQJVNͰ͔͠ΧόʔͰ͖ͳ͍ൣғ ͷ04όʔδϣϯͷγΣΞ͕Լ͕͖ͬͯͨͷͰෆ҆ఆ͞ͷπϥϛڧ͍ w "OESPJE4UVEJP9$PEFΛ͑ΔਓͳΒ&TQSFTTP9$6*5FTU͍
͍Α w *%&͕։ൃ࣌ͷͦͷ··͑ΔͷͰಋೖ͍͢͠σόοά͍͢͠ w 6*ཁૉͷऔಘ͕&TQSFTTP5FTU3FDPSEFS9$PEF6*5FTU 3FDPSEFSͰͰ͖ΔΑ͏ʹͳͬͨ
w &TQSFTTP5FTU3FDPSEFS9$PEF6* 5FTU3FDPSEFSͷ͍ํ
9$PEF6*5FTU3FDPSEFS 6*5FTU༻ͷλʔήοτΛ࡞
9$PEF6*5FTU3FDPSEFS 6*5FTUͷίʔυʹΧʔιϧΛ߹ΘͤΔͱ ϨίʔμʔͷϘλϯ͕͘ ͳΔͷͰԡ͢
9$PEF6*5FTU3FDPSEFS ىಈͨ͠ը໘ͷ6*Λλοϓ͢Δͱ ઌ΄ͲΧʔιϧΛ߹ΘͤͨҐஔʹ 6*5FTUͷίʔυ͕ੜ͞Ε͍ͯΔ ͓ࢼ͠༻ͷը໘ͷϓϩδΣΫτͷίʔυ J04ͷνϡʔτϦΞϧͷϓϩδΣΫτΛ%-ͯ͠ར༻ IUUQTEFWFMPQFSBQQMFDPNMJCSBSZDPOUFOUSFGFSFODFMJCSBSZ(FUUJOH4UBSUFE%FWFMPQJ04"QQT4XJGU 1FSTJTU%BUBIUNMBQQMF@SFGEPDVJE51$)48
&TQSFTTP5FTU3FDPSEFS CVJMEHSBEMFʹFTQSFTTPΛՃ ςετରͷϑΟʔνϟ͝ͱʹར༻͢ΔϥΠϒϥϦ͕͔ Ε͍ͯΔͷͰৄ͘͠IUUQTEFWFMPQFSBOESPJEDPN USBJOJOHUFTUJOHFTQSFTTPJOEFYIUNM ࠓճͷྫͰςετʹ͍ͬͯΔϓϩδΣΫτOFX1SPKFDUͰ4FUUJOH"DUJWJUZΛબΜͩΒ࡞ՄೳͰ͢
&TQSFTTP5FTU3FDPSEFS TSDBOESPJE5FTUKBWBQBDLBHFNZFYBNQMF\ύο έʔδʹ߹Θͤͯม͑Δ^ҎԼʹςετΫϥεՃ
&TQSFTTP5FTU3FDPSEFS ্෦ϝχϡʔ͔Β3VO3FDPSEFS&TQSFTTP5FTU Λ࣮ߦ
&TQSFTTP5FTU3FDPSEFS 3FDPSE:PVS5FTUͷμΠΞ ϩʔάͷ"EE"TTFSUJPOϘλ ϯΛԡ͢
&TQSFTTP5FTU3FDPSEFS ͢Δͱӈଆʹݱࡏىಈ͍ͯ͠ΔΞϓϦͷը໘͕ݱΕͯ ΫϦοΫ͢ΔͱͲͷཁૉʹ͍ͨͯ͠Ͳͷ߲ͷΞαʔγϣϯΛ Ճ͢Δ͔ͷϝχϡʔ͕ग़ͯ͘Δ
&TQSFTTP5FTU3FDPSEFS 4BWF"TTFSUJPOΛԡ͢ͱɺͲͷΫϥεʹ Ճͨ͠ΞαʔγϣϯͷίʔυΛు͖ग़͢ ͔ೖྗཝ͕ग़ͯ͘Δ
&TQSFTTP5FTU3FDPSEFS ు͖ग़͞ΕͨίʔυҎԼͷΑ͏ͳײ͡Ͱ͢
&TQSFTTP5FTU3FDPSEFS ు͖ग़͞ΕͨίʔυҎԼͷΑ͏ͳײ͡Ͱ͢ मਖ਼ෆཁ ଆͷཁૉͷεΠον্هͷΛݩʹमਖ਼ඞཁ
&TQSFTTP5FTU3FDPSEFS ଆͷཁૉͷεΠονͷཁૉͷࢦఆमਖ਼ͷαϯϓϧ