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はいいぞ
Search
akatsuki174
March 01, 2016
Technology
1
940
Quickはいいぞ
2016/03/01(火) shibuya.swift
テストフレームワークのQuickについて。
akatsuki174
March 01, 2016
Tweet
Share
More Decks by akatsuki174
See All by akatsuki174
最近読んでいる本-読書シェア会vol.1
akatsuki174
2
150
SwiftUI、UIKitでキャプチャを撮ろう!
akatsuki174
1
67
Appleにおけるプライバシーの全容を把握する
akatsuki174
0
5.5k
近年のAppleにおける位置情報とプライバシー
akatsuki174
3
420
オフライン勉強会ぼっち対策
akatsuki174
1
610
Xcode 15の新機能
akatsuki174
0
2.7k
AndroidにもSelect Photosがやってきた
akatsuki174
0
1.3k
Famm Android改善記
akatsuki174
0
360
Flutterアプリ開発にネイティブコードはどこまで求められるのか
akatsuki174
2
4.7k
Other Decks in Technology
See All in Technology
Change Managerを活用して本番環境へのセキュアなGUIアクセスを統制する / Control Secure GUI Access to the Production Environment with Change Manager
yuj1osm
0
110
クラウド関連のインシデントケースを収集して見えてきたもの
lhazy
9
1.8k
IAMポリシーのAllow/Denyについて、改めて理解する
smt7174
2
210
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
12
4.4k
IAMのマニアックな話2025
nrinetcom
PRO
6
1.3k
JavaにおけるNull非許容性
skrb
2
2.7k
Two Blades, One Journey: Engineering While Managing
ohbarye
4
2.3k
日経のデータベース事業とElasticsearch
hinatades
PRO
0
260
RayでPHPのデバッグをちょっと快適にする
muno92
PRO
0
190
AIエージェント時代のエンジニアになろう #jawsug #jawsdays2025 / 20250301 Agentic AI Engineering
yoshidashingo
8
3.9k
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
540
サバイバルモード下でのエンジニアリングマネジメント
konifar
12
2.5k
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Code Review Best Practice
trishagee
67
18k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Done Done
chrislema
182
16k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
260
Faster Mobile Websites
deanohume
306
31k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
The Invisible Side of Design
smashingmag
299
50k
Site-Speed That Sticks
csswizardry
4
410
Building an army of robots
kneath
303
45k
Side Projects
sachag
452
42k
Transcript
Quick͍͍ͧ @akatsuki174
ࣗݾհ • ιϑτΣΞձࣾΤϯδχΞ(2) άϩʔεϋοΧʔ → WebΤϯδχΞ → iOSΤϯδχΞ • Twitter,
Qiita, SlideShare, Github →akatsuki174
ࠓճͷࢿྉ ͜ͷεϥΠυ https://speakerdeck.com/akatsuki174/ quickhaiizo Qiitaͷهࣄ(εϥΠυલ) http://qiita.com/akatsuki174/items/ 0ed315456d267cde19f4 αϯϓϧίʔυ https://github.com/akatsuki174/ QuickSample
࣍ Quickͷ֓ཁ XCTestͱQuickΛൺͯΈΑ͏ NimbleͰͰ͖Δ͜ͱΛֶ΅͏ ·ͱΊɿQuickͷΠΠτίϩ
࣍ Quickͷ֓ཁ XCTestͱQuickΛൺͯΈΑ͏ NimbleͰͰ͖Δ͜ͱΛֶ΅͏ ·ͱΊɿQuickͷΠΠτίϩ
Quickͱ “Quick is a behavior-driven development framework for Swift and
Objective-C. Inspired by RSpec, Specta, and Ginkgo.” https://github.com/Quick/QuickΑΓൈਮ →Swift, Objective-CͷͨΊͷBDDςετϑ ϨʔϜϫʔΫ
ຊޠυΩϡϝϯτొ
ͦͷ࣌ਓ
Nimbleͱ Quick͕෦Ͱ͍ͬͯΔmatcherɻ XCTestΛ͏ΑΓظͱ࣮ࡍͷ ΛΑΓ໌֬ʹද͢͜ͱ͕Ͱ͖Δɻ
࣍ Quickͷ֓ཁ XCTestͱQuickΛൺͯΈΑ͏ NimbleͰͰ͖Δ͜ͱΛֶ΅͏ ·ͱΊɿQuickͷΠΠτίϩ
XCTestͱQuickΛൺͯΈΑ͏ ςετϝιουͷॻ͖ํ ςετͷॻ͖ํ ςετ͕ࣦഊͨ࣌͠ͷදࣔ
XCTestͱQuickΛൺͯΈΑ͏ ςετϝιουͷॻ͖ํ ςετͷॻ͖ํ ςετ͕ࣦഊͨ࣌͠ͷදࣔ
ςετϝιουͷॻ͖ํ XCTest Quick
ςετϝιουͷॻ͖ํ XCTest Quick
ςετϝιουͷॻ͖ํ XCTest Quick describe describe context it
XCTestͱQuickΛൺͯΈΑ͏ ςετϝιουͷॻ͖ํ ςετͷॻ͖ํ ςετ͕ࣦഊͨ࣌͠ͷදࣔ
ςετͷॻ͖ํ XCTest Quick
XCTestͱQuickΛൺͯΈΑ͏ ςετϝιουͷॻ͖ํ ςετͷॻ͖ํ ςετ͕ࣦഊͨ࣌͠ͷදࣔ
ςετ͕ࣦഊͨ࣌͠ͷදࣔ XCTest Quick
࣍ Quickͷ֓ཁ XCTestͱQuickΛൺͯΈΑ͏ NimbleͰͰ͖Δ͜ͱΛֶ΅͏ ·ͱΊɿQuickͷΠΠτίϩ
toEventually(, toEventuallyNot) ඇಉظͷςετ ެࣜΑΓɻ
matcherؔ ެࣜΑΓɻ
matcherؔ ެࣜΑΓɻ Swift Error Handling
matcherؔ ެࣜΑΓɻ Collection Membership
matcherؔ ެࣜΑΓɻ Strings
matcherؔ ެࣜΑΓɻ Checking if all elements of a collection pass
a condition
matcherؔ ެࣜΑΓɻ Matching a value to any of a group
of matchers
࣍ Quickͷ֓ཁ XCTestͱQuickΛൺͯΈΑ͏ NimbleͰͰ͖Δ͜ͱΛֶ΅͏ ·ͱΊɿQuickͷΠΠτίϩ
·ͱΊɿQuickͷΠΠτίϩ 1. ΤϥʔϝοηʔδΛΘ͟Θ͟ ɹॻ͔ͳ͍͍ͯ͘ 2. NimbleͰॊೈͳAssert͕ॻ͚Δ 3. ςετͷ·ͱ·Γ͕Θ͔Γ͍͢
·ͱΊɿQuickͷΠΠτίϩ 1. ΤϥʔϝοηʔδΛΘ͟Θ͟ ɹॻ͔ͳ͍͍ͯ͘ 2. NimbleͰॊೈͳAssert͕ॻ͚Δ 3. ςετͷ·ͱ·Γ͕Θ͔Γ͍͢
ςετͷ·ͱ·Γ͕ Θ͔Γ͍͢ XCTest Quick
Έͳ͞Μ QuickΛͬͯΈ·͠ΐ͏
ऴΘΓ