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.3k
テストも開発もするモバイルエンジニアのための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
620
DNSの話1 ~ Webアプリエンジニアの一人ネットワーク勉強会
woshidan
0
530
DNSキャッシュポイズニング ~ Webアプリエンジニアの一人ネットワーク勉強会
woshidan
0
560
テーブルを作ってみる話
woshidan
3
100k
メモリリークに関するウワサの今昔
woshidan
6
30k
元Railsエンジニアが 現場で引き継いで使ってみたKotlin
woshidan
1
2.9k
Other Decks in Programming
See All in Programming
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
720
StarlingMonkeyを触ってみた話 - 2024冬
syumai
3
270
これが俺の”自分戦略” プロセスを楽しんでいこう! - Developers CAREER Boost 2024
niftycorp
PRO
0
190
From Translations to Multi Dimension Entities
alexanderschranz
2
130
MCP with Cloudflare Workers
yusukebe
2
220
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
120
fs2-io を試してたらバグを見つけて直した話
chencmd
0
230
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.6k
CSC509 Lecture 14
javiergs
PRO
0
140
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
KubeCon + CloudNativeCon NA 2024 Overviewat Kubernetes Meetup Tokyo #68 / amsy810_k8sjp68
masayaaoyama
0
250
創造的活動から切り拓く新たなキャリア 好きから始めてみる夜勤オペレーターからSREへの転身
yjszk
1
130
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
The World Runs on Bad Software
bkeepers
PRO
65
11k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Music & Morning Musume
bryan
46
6.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
The Cost Of JavaScript in 2023
addyosmani
45
7k
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 ଆͷཁૉͷεΠονͷཁૉͷࢦఆमਖ਼ͷαϯϓϧ