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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
GDG Aracaju
February 07, 2015
Programming
56
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
70
Introdução ao Android Wear
gdgaracaju
0
48
Backend para aplicativos mobile
gdgaracaju
0
45
Git
gdgaracaju
0
82
Segurança no Android
gdgaracaju
0
47
Android Fundamentals Lesson 3 review
gdgaracaju
0
48
Other Decks in Programming
See All in Programming
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
150
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
250
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.8k
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
550
今さら聞けない .NET CLI
htkym
0
140
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.6k
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
0
510
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
410
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3.1k
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
120
テーブルをDELETEした
yuzneri
0
110
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
16k
Featured
See All Featured
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
440
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
500
Done Done
chrislema
186
16k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
420
Building the Perfect Custom Keyboard
takai
2
820
The Mindset for Success: Future Career Progression
greggifford
PRO
0
430
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
610
Discover your Explorer Soul
emna__ayadi
2
1.2k
Odyssey Design
rkendrick25
PRO
2
730
How to Ace a Technical Interview
jacobian
281
24k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
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