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.1k
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
890
標準パッケージにおけるテストでの利用例から学ぶ 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
470
ソースコードから読み解く - 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
try-catchを使わないエラーハンドリング!? PHPでResult型の考え方を取り入れてみよう
kajitack
3
220
TSConfig Solution Style & subpath imports to switch types on a per-file basis
maminami373
1
180
Blueskyのプラグインを作ってみた
hakkadaikon
1
260
CRUD から CQRS へ ~ 分離が可能にする柔軟性
tkawae
0
220
ソフトウェア品質特性、意識してますか?AIの真の力を引き出す活用事例 / ai-and-software-quality
minodriven
19
6.6k
Perlで痩せる
yuukis
1
640
REST API設計の実践 – ベストプラクティスとその落とし穴
kentaroutakeda
2
310
AI時代のリアーキテクチャ戦略 / Re-architecture Strategy in the AI Era
dachi023
0
190
當開發遇上包裝:AI 如何讓產品從想法變成商品
clonn
0
2.5k
AI Coding Agent Enablement in TypeScript
yukukotani
17
7k
List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate'"
philipschwarz
PRO
0
120
JSAI2025 RecSysChallenge2024 優勝報告
unonao
1
370
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.3k
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Power of CSS Pseudo Elements
geoffreycrofte
76
5.8k
It's Worth the Effort
3n
184
28k
4 Signs Your Business is Dying
shpigford
183
22k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
The Cult of Friendly URLs
andyhume
78
6.4k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
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.