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
MadCode 13 Webinar
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
vmalakhovskiy
October 14, 2016
Programming
0
50
MadCode 13 Webinar
Introduction to tests in IOS. Theoretical part
vmalakhovskiy
October 14, 2016
Tweet
Share
More Decks by vmalakhovskiy
See All by vmalakhovskiy
Engineering team best friend - CI/CD
vmalakhovskiy
0
72
Data driven view controllers
vmalakhovskiy
0
430
Cocoaheads #13
vmalakhovskiy
0
43
Developing apps for Apple Watch
vmalakhovskiy
0
68
Why do you need to switch from Obj-C to Swift, or let's talk about ReactiveCocoa v4
vmalakhovskiy
0
510
Data processing components architecture in mobile applications
vmalakhovskiy
0
83
Other Decks in Programming
See All in Programming
16年目のピクシブ百科事典を支える最新の技術基盤 / The Modern Tech Stack Powering Pixiv Encyclopedia in its 16th Year
ahuglajbclajep
5
1k
組織で育むオブザーバビリティ
ryota_hnk
0
170
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
190
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
2.5k
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
690
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
270
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
650
Grafana:建立系統全知視角的捷徑
blueswen
0
330
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
5
440
Architectural Extensions
denyspoltorak
0
280
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
Featured
See All Featured
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
99
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
170
It's Worth the Effort
3n
188
29k
How STYLIGHT went responsive
nonsquared
100
6k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
We Have a Design System, Now What?
morganepeng
54
8k
Paper Plane
katiecoart
PRO
0
46k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
170
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
310
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
110
The Limits of Empathy - UXLibs8
cassininazir
1
210
Transcript
Introduction to tests in iOS Malakhovskyi Vitalii Senior iOS Developer
@
Overview - Why do we need tests? - TDD, BDD,
Stub, Mock, Unit test, Integration test, Dependency Injection Demo - Objective-C, Swift
Do we really need tests?
How much time do I spend to write the code?
And then to debug it…
Design Implement Test
Time 5000 Codebase
Kent Beck
Design Implement Test
Test/Design Implement
Code Test Code Test Code Test Code Test Code Test
Code Test Code Test Code Test Code Test
Add tests See tests fail Write code Run tests Refactor
Test Driven Development
Test/Design Implement
BDD is about scenarios
Request Parse Convert Failure Failure Failure Result
None
None
Always use BDD!
System under test
System under test Unit tests
System under test Integration tests Class Class Class Class
System under test Class Class
System under test Class Class
System under test Class Class
System under test Stub Mock Integration tests
None
What to read? • https://www.amazon.com/Test-Driven- Development-Kent-Beck/dp/0321146530 • http://blog.cleancoder.com
Contact me: purpleshirted crimsongf Vitaliy Malakhovskiy