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.2k
テストも開発もするモバイルエンジニアのための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.1k
マーケティングオートメーションツールとアプリエンジニア -プッシュ通知・お知らせダイアローグの運用自動化のためのお仕事-
woshidan
0
2k
DNSの話2 ~ Webアプリエンジニアの一人ネットワーク勉強会
woshidan
1
610
DNSの話1 ~ Webアプリエンジニアの一人ネットワーク勉強会
woshidan
0
520
DNSキャッシュポイズニング ~ Webアプリエンジニアの一人ネットワーク勉強会
woshidan
0
540
テーブルを作ってみる話
woshidan
3
100k
メモリリークに関するウワサの今昔
woshidan
6
30k
元Railsエンジニアが 現場で引き継いで使ってみたKotlin
woshidan
1
2.9k
Other Decks in Programming
See All in Programming
AWS IaCの注目アップデート 2024年10月版
konokenj
3
3.1k
gopls を改造したら開発生産性が高まった
satorunooshie
8
240
Go言語でターミナルフレンドリーなAIコマンド、afaを作った/fukuokago20_afa
monochromegane
2
140
RailsのPull requestsのレビューの時に私が考えていること
yahonda
5
1.7k
詳細解説! ArrayListの仕組みと実装
yujisoftware
0
480
[PyCon Korea 2024 Keynote] 커뮤니티와 파이썬, 그리고 우리
beomi
0
110
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
3
400
推し活としてのrails new/oshikatsu_ha_iizo
sakahukamaki
3
1.7k
役立つログに取り組もう
irof
26
8.6k
讓數據說話:用 Python、Prometheus 和 Grafana 講故事
eddie
0
350
Java ジェネリクス入門 2024
nagise
0
600
Vue.js学習の振り返り
hiro_xre
2
130
Featured
See All Featured
Writing Fast Ruby
sferik
626
61k
Designing the Hi-DPI Web
ddemaree
280
34k
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
Documentation Writing (for coders)
carmenintech
65
4.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
Building Better People: How to give real-time feedback that sticks.
wjessup
363
19k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.8k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
290
Unsuck your backbone
ammeep
668
57k
Code Review Best Practice
trishagee
64
17k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
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 ଆͷཁૉͷεΠονͷཁૉͷࢦఆमਖ਼ͷαϯϓϧ