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
vmalakhovskiy
October 14, 2016
Programming
0
48
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
68
Data driven view controllers
vmalakhovskiy
0
420
Cocoaheads #13
vmalakhovskiy
0
42
Developing apps for Apple Watch
vmalakhovskiy
0
63
Why do you need to switch from Obj-C to Swift, or let's talk about ReactiveCocoa v4
vmalakhovskiy
0
500
Data processing components architecture in mobile applications
vmalakhovskiy
0
81
Other Decks in Programming
See All in Programming
rage against annotate_predecessor
junk0612
0
160
私の後悔をAWS DMSで解決した話
hiramax
4
180
CloudflareのChat Agent Starter Kitで簡単!AIチャットボット構築
syumai
2
360
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
140
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
410
Design Foundational Data Engineering Observability
sucitw
2
130
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
320
KessokuでDIでもgoroutineを活用する / Go Connect #6
mazrean
0
140
AIを活用し、今後に備えるための技術知識 / Basic Knowledge to Utilize AI
kishida
19
4.4k
オープンセミナー2025@広島LT技術ブログを続けるには
satoshi256kbyte
0
150
[FEConf 2025] 모노레포 절망편, 14개 레포로 부활하기까지 걸린 1년
mmmaxkim
0
1.4k
時間軸から考えるTerraformを使う理由と留意点
fufuhu
10
3.9k
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Code Reviewing Like a Champion
maltzj
525
40k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
284
13k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
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