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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
akatsuki174
March 01, 2016
Technology
1k
1
Share
Quickはいいぞ
2016/03/01(火) shibuya.swift
テストフレームワークのQuickについて。
akatsuki174
March 01, 2016
More Decks by akatsuki174
See All by akatsuki174
逆向きUIの世界 〜iOSアプリのRTL言語対応〜
akatsuki174
1
580
逆向きUIの世界〜AndroidアプリのRTL言語対応〜
akatsuki174
1
1k
私が変えてきたこと、変えなかったこと
akatsuki174
2
1k
最近読んでいる本-読書シェア会vol.1
akatsuki174
2
260
SwiftUI、UIKitでキャプチャを撮ろう!
akatsuki174
1
140
Appleにおけるプライバシーの全容を把握する
akatsuki174
0
6.2k
近年のAppleにおける位置情報とプライバシー
akatsuki174
3
510
オフライン勉強会ぼっち対策
akatsuki174
1
710
Xcode 15の新機能
akatsuki174
0
2.9k
Other Decks in Technology
See All in Technology
AI時代にデータ基盤が持つべきCapabilityを考える + Snowflake Data Superheroやっていき宣言 / Considering the Capabilities Data Platforms Should Have in the AI Era + Declaration of Commitment as a Snowflake Data Superhero
civitaspo
0
110
最初の一歩を踏み出せなかった私が、誰かの背中を押したいと思うようになるまで / give someone a push
mii3king
0
160
レビューしきれない?それは「全て人力でのレビュー」だからではないでしょうか
amixedcolor
0
290
猫でもわかるKiro CLI(CDKコーディング編)
kentapapa
1
130
20年前の「OSS革命」に学ぶ AI時代の生存戦略
samakada
0
290
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.1k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.3k
クラウドネイティブな開発 ~ 認知負荷に立ち向かうためのコンテナ活用
literalice
0
110
え!?初参加で 300冊以上 も頒布!? これは大成功!そのはずなのに わいの財布は 赤字 の件
hellohazime
0
160
Master Dataグループ紹介資料
sansan33
PRO
1
4.6k
Snowflake Intelligence導入で 分かった活用のコツ
wonohe
0
120
マルチエージェント × ハーネスエンジニアリング × GitLab Duo Agent Platformで実現する「AIエージェントに仕事をさせる時代へ。」 / 20260421 GitLab Duo Agent Platform
n11sh1
0
140
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
Building the Perfect Custom Keyboard
takai
2
730
Embracing the Ebb and Flow
colly
88
5k
Claude Code のすすめ
schroneko
67
220k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.2k
The untapped power of vector embeddings
frankvandijk
2
1.7k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
180
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
270
The browser strikes back
jonoalderson
0
970
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
470
Paper Plane (Part 1)
katiecoart
PRO
0
6.6k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
140
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ΛͬͯΈ·͠ΐ͏
ऴΘΓ