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
Save the world: design for testability
Search
GDG Aracaju
February 07, 2015
Programming
47
1
Share
Save the world: design for testability
Presentation by @lucasxas
GDG Aracaju
February 07, 2015
More Decks by GDG Aracaju
See All by GDG Aracaju
Como aumentar a sua produtividade no Android Studio
gdgaracaju
0
160
Firebase e Android
gdgaracaju
0
97
Aplicações em Asp.NET WebAPI 2.2 e AngularJS
gdgaracaju
2
120
Android + Chromecast
gdgaracaju
1
63
Introdução ao Android Wear
gdgaracaju
0
39
Backend para aplicativos mobile
gdgaracaju
0
40
Git
gdgaracaju
0
76
Segurança no Android
gdgaracaju
0
39
Android Fundamentals Lesson 3 review
gdgaracaju
0
39
Other Decks in Programming
See All in Programming
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.3k
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
330
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
820
Rethinking API Platform Filters
vinceamstoutz
0
4.8k
PHP でエミュレータを自作して Ubuntu を動かそう
m3m0r7
PRO
2
160
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
3
2.7k
Mastering Event Sourcing: Your Parents Holidayed in Yugoslavia
super_marek
0
130
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
230
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
220
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
1.4k
The free-lunch guide to idea circularity
hollycummins
0
400
見せてもらおうか、 OpenSearchの性能とやらを!
shunta27
1
170
Featured
See All Featured
New Earth Scene 8
popppiees
2
2k
Abbi's Birthday
coloredviolet
2
6.2k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
170
GitHub's CSS Performance
jonrohan
1032
470k
Bash Introduction
62gerente
615
210k
The SEO Collaboration Effect
kristinabergwall1
0
410
Utilizing Notion as your number one productivity tool
mfonobong
4
280
How STYLIGHT went responsive
nonsquared
100
6k
Everyday Curiosity
cassininazir
0
180
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
350
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
260
Transcript
design for testability Save the world Lucas Xavier @lucasxavier
About me Lucas Xavier @lucasxavier • Lucas Xavier - Software
Engineer for five years - Test Specialist, UFPE - Bsc in Information Systems, UFS - Nonsense humour - Game of Thrones - Rock!
Agenda • Value proposition • What’s testability? • Best practices
• Anti-patterns • Unit Testing and TDD • Hands-on! Lucas Xavier @lucasxavier
Value proposition • Design + coding + debugging + testing
• Certainties in life • Death • Taxes • Bugs • Early feedback Lucas Xavier @lucasxavier
What’s testability? • Repeatable • Easy to Write • Easy
to Understand • Fast Lucas Xavier @lucasxavier
What’s testability? • Components: • Control • Visibility • Operability
• Simplicity • Understandability • Suitability • Stability Lucas Xavier @lucasxavier
Best practices • Set up and teardown • KISS •
Loose coupling • Dependency injection • Elimination of globals • Clear code Lucas Xavier @lucasxavier
Anti-patterns • Unclear execution paths • Train Wrecks • Dependencies
between test cases • Testing precise timing or performance • All-knowing oracles • Slow running tests Lucas Xavier @lucasxavier
Unit Testing and TDD • Unit Testing • Test Driven
Development • Unit Testing is a component of TDD Lucas Xavier @lucasxavier
Hands-on! Lucas Xavier @lucasxavier