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
640
DNSの話1 ~ Webアプリエンジニアの一人ネットワーク勉強会
woshidan
0
560
DNSキャッシュポイズニング ~ Webアプリエンジニアの一人ネットワーク勉強会
woshidan
0
590
テーブルを作ってみる話
woshidan
3
110k
メモリリークに関するウワサの今昔
woshidan
6
30k
元Railsエンジニアが 現場で引き継いで使ってみたKotlin
woshidan
1
3k
Other Decks in Programming
See All in Programming
The Nature of Complexity in John Ousterhout’s Philosophy of Software Design
philipschwarz
PRO
0
170
Bedrock × Confluenceで簡単(?)社内RAG
iharuoru
1
130
データと事例で振り返るDevin導入の"リアル" / The Realities of Devin Reflected in Data and Case Studies
rkaga
2
1.6k
VitestのIn-Source Testingが便利
taro28
9
2.4k
七輪ライブラリー: Claude AI で作る Next.js アプリ
suneo3476
1
190
一緒に働きたくなるプログラマの思想 #QiitaConference
mu_zaru
81
21k
状態と共に暮らす:ステートフルへの挑戦
ypresto
3
1.2k
ドメイン駆動設計とXPで支える子どもの未来 / Domain-Driven Design and XP Supporting Children's Future
nrslib
0
270
2025-04-25 GitHub Copilot Agent ライブデモ(スクリプト)
goataka
0
110
fieldalignmentから見るGoの構造体
kuro_kurorrr
0
140
今話題のMCPサーバーをFastAPIでサッと作ってみた
yuukis
0
130
iOSアプリで測る!名古屋駅までの 方向と距離
ryunakayama
0
160
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
How STYLIGHT went responsive
nonsquared
100
5.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.2k
Designing for humans not robots
tammielis
253
25k
The Language of Interfaces
destraynor
158
25k
Thoughts on Productivity
jonyablonski
69
4.6k
GraphQLの誤解/rethinking-graphql
sonatard
71
10k
Agile that works and the tools we love
rasmusluckow
329
21k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Optimizing for Happiness
mojombo
378
70k
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 ଆͷཁૉͷεΠονͷཁૉͷࢦఆमਖ਼ͷαϯϓϧ