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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
GDG Aracaju
February 07, 2015
Programming
55
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
170
Firebase e Android
gdgaracaju
0
100
Aplicações em Asp.NET WebAPI 2.2 e AngularJS
gdgaracaju
2
130
Android + Chromecast
gdgaracaju
1
67
Introdução ao Android Wear
gdgaracaju
0
47
Backend para aplicativos mobile
gdgaracaju
0
44
Git
gdgaracaju
0
81
Segurança no Android
gdgaracaju
0
47
Android Fundamentals Lesson 3 review
gdgaracaju
0
47
Other Decks in Programming
See All in Programming
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.4k
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
280
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
150
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
370
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
280
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
220
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
420
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
180
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
990
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
140
AIで効率化できた業務・日常
ochtum
0
150
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
1
3.8M
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Speed Design
sergeychernyshev
33
1.9k
Ruling the World: When Life Gets Gamed
codingconduct
0
270
WENDY [Excerpt]
tessaabrams
11
38k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
620
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
170
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
380
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