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
1
37
Save the world: design for testability
Presentation by @lucasxas
GDG Aracaju
February 07, 2015
Tweet
Share
More Decks by GDG Aracaju
See All by GDG Aracaju
Como aumentar a sua produtividade no Android Studio
gdgaracaju
0
150
Firebase e Android
gdgaracaju
0
93
Aplicações em Asp.NET WebAPI 2.2 e AngularJS
gdgaracaju
2
120
Android + Chromecast
gdgaracaju
1
59
Introdução ao Android Wear
gdgaracaju
0
36
Backend para aplicativos mobile
gdgaracaju
0
34
Git
gdgaracaju
0
72
Segurança no Android
gdgaracaju
0
34
Android Fundamentals Lesson 3 review
gdgaracaju
0
36
Other Decks in Programming
See All in Programming
CSC305 Lecture 08
javiergs
PRO
0
280
AI駆動で0→1をやって見えた光と伸びしろ
passion0102
1
860
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
18
8.9k
三者三様 宣言的UI
kkagurazaka
0
250
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
110
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
46k
Blazing Fast UI Development with Compose Hot Reload (droidcon London 2025)
zsmb
0
170
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
2
380
Temporal Knowledge Graphで作る! 時間変化するナレッジを扱うAI Agentの世界
po3rin
1
140
モテるデスク環境
mozumasu
3
1.3k
One Enishi After Another
snoozer05
PRO
0
160
Go言語はstack overflowの夢を見るか?
logica0419
0
620
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
Code Review Best Practice
trishagee
72
19k
Being A Developer After 40
akosma
91
590k
The Pragmatic Product Professional
lauravandoore
36
7k
Visualization
eitanlees
149
16k
Six Lessons from altMBA
skipperchong
29
4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Building Applications with DynamoDB
mza
96
6.7k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
2
66
Docker and Python
trallard
46
3.6k
Embracing the Ebb and Flow
colly
88
4.9k
How to Think Like a Performance Engineer
csswizardry
27
2.1k
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