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
Quick/Nimbleをより快適に使うために/quick-nimble-more-useful
Search
Yusuke Hosonuma
December 05, 2017
Programming
1
5.2k
Quick/Nimbleをより快適に使うために/quick-nimble-more-useful
iOS Test Night #6 での発表。
https://testnight.connpass.com/event/69396/
Yusuke Hosonuma
December 05, 2017
Tweet
Share
More Decks by Yusuke Hosonuma
See All by Yusuke Hosonuma
KotlinTest で始める Property-based Testing/kotlintest-property-based-testing
yusukehosonuma
2
1.5k
Marzipan の正体は何だったのか そして SwiftUI の衝撃/wwdc19_marzipan_swiftui
yusukehosonuma
2
910
標準パッケージにおけるテストでの利用例から学ぶ testing / quick パッケージ/golang-testing-quick
yusukehosonuma
4
12k
Swift で ParameterizedTest をやってみた話/swift-parameterized-test
yusukehosonuma
4
2.1k
Property-based test beginning with SwiftCheck
yusukehosonuma
1
5.7k
XCTest(再)入門/reintroduction-to-xctest
yusukehosonuma
0
490
ソースコードから読み解く - Quick はどのように実装されているのか?/quick-code-reading
yusukehosonuma
7
11k
Swift 4.2 はどのような進化をしているのか/whats-new-swift42
yusukehosonuma
16
15k
HTTPモックライブラリ「Mockingjay」を使ってみた話/swift-mockingjay
yusukehosonuma
5
3.9k
Other Decks in Programming
See All in Programming
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
5
8.7k
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
170
DMMを支える決済基盤の技術的負債にどう立ち向かうか / Addressing Technical Debt in Payment Infrastructure
yoshiyoshifujii
3
410
ソフトウェア設計とAI技術の活用
masuda220
PRO
17
3.7k
NEWT Backend Evolution
xpromx
1
140
Model Pollution
hschwentner
1
160
「テストは愚直&&網羅的に書くほどよい」という誤解 / Test Smarter, Not Harder
munetoshi
0
200
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
200
GPUを計算資源として使おう!
primenumber
1
250
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
620
テスト駆動Kaggle
isax1015
1
620
ISUCON研修おかわり会 講義スライド
arfes0e2b3c
1
470
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
990
A designer walks into a library…
pauljervisheath
207
24k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
282
13k
Speed Design
sergeychernyshev
32
1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Fireside Chat
paigeccino
37
3.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Typedesign – Prime Four
hannesfritz
42
2.7k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Facilitating Awesome Meetings
lara
54
6.5k
Transcript
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. iOS Test Night
#6 1प 2017/12/05 (Tue) ࡉপ ༞հ@DeNA 2VJDL/JNCMFΛ ΑΓշదʹ͏ͨΊʹ 1
˙:VTVLF)PTPOVNBʢ!UPCJʣ • ॴଐ ⁃ %F/"ɹ48&5άϧʔϓɹςετج൫νʔϜ • 'BWPSJUF ⁃ •
ۙگ ⁃ J04%$Ͱ-5ʢ#MVFQJMMʣ ⁃ ԶίϯWPMʢςετۦಈ։ൃʣ ⁃ ,PUMJO͡Ί·ͨ͠ ⁃ ,PUMJO͔Θ͍͍Αʂʢ4XJGUʁʣ ࣗݾհ Copyright (C) DeNA Co.,Ltd. All Rights Reserved. 2
ࠓɺ͢͜ͱ 3 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
2VJDL/JNCMF ΛΑΓշదʹ͍͍ͨ 4 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
ϥΠϒίʔσΟϯάΛަ͑ͳ͕Β
ΞδΣϯμ 5 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •
2VJDL/JNCMFͱʁ • ೖ • ՝ • ղܾํ๏ͷࡧ • ϥΠϒίʔσΟϯά • ·ͱΊ
2VJDLͱ 6 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
Quickͱʁ 7 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •
4XJGUͷςεςΟϯά'8 • #%%ʢ#FIBWJPS%SJWFO%FWFMPQNFOUʣ • 5%%͔Βੜ • ৼΔ͍ʹணͯ͠ςετΛॻ͜͏ • 34QFDͳͲʹΠϯεύΠΞ • ςετΛߏԽͯ͠هड़Ͱ͖Δ
ςετͷߏԽʁ 8 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
ςετͷߏԽʁ 9 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ςετ֓ཁʢEFTDSJCFʣ
ςετ݅ʢDPOUFYUʣ ظ݁ՌʢJUʣ "1*ʢ%4-ʣʹΑͬͯ ߏԽΛڧ੍Ͱ͖Δ
/JNCMFͱ 10 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
Nimbleͱʁ 11 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •
2VJDLͱҰॹʹΘΕΔ.BUDIFS'8 • "TTFSUJPOϥΠϒϥϦ • ࣗવͳӳจͷΑ͏ͳ"1* • ࣦഊ࣌ͷΤϥʔϝοηʔδ͔Γ͍͢
.BUDIFSʁ 12 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
Matcherʁ 13 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. expect(array).toNot(contain(3))
&YQFDUBSSBZUPOPUDPOUBJO ؚ͕·Εͳ͍͜ͱΛظ͕ͨ͠ɺ݁Ռ< > ҙਤ͕ಡΈ͍͢ςετίʔυ ࣦഊ࣌ͷΤϥʔϝοηʔδ͔Γ͘͢
Quick / Nimble ͷར·ͱΊ 14 Copyright (C) DeNA Co.,Ltd. All
Rights Reserved. • ςετͷߏԽ • "1*ʹΑͬͯॻ͖ํ͕౷Ұ͞ΕΔ • ςετΛॻ͘ͱ͖ʹ໎Θͳ͍ • ಡΈ͍͢ςετίʔυ • ࣗવͳӳจͰςετͷҙਤ͕͔Γ͍͢ • Τϥʔϝοηʔδʹ
Α͠ɺϝϦοτ͔ͬͨɻ σϝϦοτʁ 15 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
͜͜େ
Quick / Nimble ͷσϝϦοτ 16 Copyright (C) DeNA Co.,Ltd. All
Rights Reserved. ᶃֶशίετ͕ߴ͍ ᶄ*%&ͷิ͕ޮ͖ʹ͍͘ ᶅҰཡΛ֬ೝͮ͠Β͍ ࢲ͕࠷ॳʹࢼͨ࣌͠ʹ ײͨ͜͡ͱ ͜Εհ͚ͩ վળํ๏Λࡧ
ᶃֶशίετ 17 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
ެࣜͷREADME 18 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ͳΜ͔εοΩϦͯ͠Δ͠ɺ͘͠ͳͦ͞͏ʂ
υΩϡϝϯτΛಡ͏ͱ͢Δͱɾɾɾ 19 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. 2VJDLͷ࣍
/JNCMFͷ࣍
υΩϡϝϯτΛಡ͏ͱ͢Δͱɾɾɾ 20 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. 2VJDLͷ࣍
/JNCMFͷ࣍ ͦΕͳΓͷ υΩϡϝϯτྔʜʂ
ᶃֶशίετֻ͕͔Δ 21 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •
9$5FTU΄Ͳ୯७Ͱͳ͍ • υΩϡϝϯτͷྔ݁ߏ͋Δ • #%%ʹ׳Ε͍ͯͳ͍ͱݦஶ
ᶄ*%&ͷิ͕͖͖ʹ͍͘ 22 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
IDE ͷิɹέʔεᶃ 23 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
͑ʔͱɺظ݁ՌFYQʜͦ͏ͦ͏ίϨͩʂ
IDE ͷิ͕ඍົɹέʔεᶃ 24 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
͑ʔͱɺظ݁ՌFYQʜͦ͏ͦ͏ίϨͩʂ ෆਖ਼ղʂ ͜Ε9$5FTUͷ"1*
IDE ͷิ͕ඍົɹέʔεᶄ 25 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
͑ʔͱɺFYQFDUͷ࣍UPͰɾɾɾ ͑ʔͱɾɾɾʢࢥߟఀࢭʣ
IDE ͷิ͕ඍົɹέʔεᶄ 26 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
͑ʔͱɺFYQFDUͷ࣍UPͰɾɾɾ ͑ʔͱɾɾɾʢࢥߟఀࢭʣ ϝιουνΣʔϯ͕ΕΔͷͰ ิ͕ޮ͔ͳ͘ͳΔʂ
ᶄ*%&ͷิ͕͖͖ʹ͍͘ 27 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •
طଘͷ"1*ͱࣅ͍ͯΔ໊લʢ͍͜͠ʣ • ϝιουνΣʔϯ͕ΕͯิͰ͖ͳ͍ • ੩తܕ͚ͳͷʹπϥΠ
ᶅҰཡΛ֬ೝɾҠಈͮ͠Β͍ 28 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
XCTest ͷ߹ 29 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
$USM બ͢Εͦ͜ʹҠಈͰ͖Δʂ
Quick ͷ߹ 30 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
$USM ɾɾɾɻ 9DPEFʢͨΓલ͚ͩͲʣ ϝιουͷҰཡ͔͠ग़ͯ͘͠Εͳ͍
ᶅҰཡΛ֬ೝɾҠಈͮ͠Β͍ 31 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •
9$5FTU • $USM ͰςετҰཡ͕ݟΕΔ • બ͢ΕҠಈग़དྷΔ • 2VJDL • *%&ͷαϙʔτͳ͠ Կ͔ྑ͍ํ๏͕͋Ε ڭ͍͑ͯͩ͘͞NN
গ͠ͰղফͰ͖ͳ͍ʁ 32 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ͪΐͬͱߟ͑ͯΈ·ͨ͠
ᶃϥούʔ"1*Λ࡞Δ 33 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
UPΛೖྗͨ͠ޙʹࢥߟఀࢭ͢Δ 34 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ͑ʔͱɺFYQFDUͷ࣍UPͰɾɾɾ
ɾɾɾʢࢥߟఀࢭʣ
ࢼ͠ʹϥούʔΛॻ͍ͯΈͨ 35 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. &YQFDUBUJPOͷ؆қͳ֦ு
ೖྗิΛͯ͠ΈΔͱʁ 36 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ิީิʹग़ͨʂ
͜ΕͰʮUPʯ·Ͱ͍֮͑ͯΕɺ Ұཡ͔Βతͷ"1*Λ୳ͤΔΑ͏ʹͳͬͨʂ
ᶄεχϖοτΛ࡞Δ 37 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
ೖྗ͕໘ͳ 38 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ͑ʔͱɺظ݁ՌFYQʜͦ͏ͦ͏ίϨͩʂ
ෆਖ਼ղ
εχϖοτΛ࡞Δ 39 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. γϣʔτΧοτͷઌ಄ʹ
ଞ"1*ͰΘΕͳ͍Α͏ͳʮYYʯ ͜͜ʹ͋Δͭ
YYͱೖྗ͢Δͱʁ 40 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ೖྗ͖͢ϓϨʔεϗϧμͰ
͔ΔͷͰɺॳ৺ऀͰؒҧ͑ͳ͍ʂ ઌ಄ʹީิ͕ग़ͨʂ
EFTDSJCFDPOUFYUJUɹొͯ͠Έͨ 41 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ʮ[[ʯͰγϣʔτΧοτ
Γॳ৺ऀʹ͍͞͠ʂ
Quick / Nimble ͷσϝϦοτ 42 Copyright (C) DeNA Co.,Ltd. All
Rights Reserved. ᶃֶशίετֻ͕͔Δ ᶄ*%&ͷิ͕ޮ͖ʹ͍͘ ᶅҰཡΛ֬ೝͮ͠Β͍ গ͠վળͰ͖ͨʁ ݁ՌϥΠϒίʔσΟϯάʹͯʂ
ϥΠϒίʔσΟϯά 43 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
·ͱΊ 44 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
·ͱΊ 45 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •
2VJDL/JNCMF • ςετΛߏԽɾಡΈ͘͢ • ֶशίετɺ*%&ิͳͲͷ՝͋Δ • ରࡦ • ϥούʔ"1*ɾεχϖοτͰվળ • εχϖοτνʔϜͰڞ༗Ͱ͖Δ • ͍ • ಓ۩Λ͍͜ͳ͍͖͍ͯͨ͠
&OKPZEFWFMPQNFOU XJUI#%% 46 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.