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
TDD - Test Driven Development
Search
Scalone
November 12, 2014
Programming
1
130
TDD - Test Driven Development
A superficial presentation about TDD, in portuguese, to FATEC Tech Week (Franca, SP, Brasil).
Scalone
November 12, 2014
Tweet
Share
More Decks by Scalone
See All by Scalone
TDD - Test Driven Development
scalone
0
3
Ruby, Web and IOT with the same Platform
scalone
0
68
20k mRuby devices in Production
scalone
0
410
DaFunk, IOT Framework in Ruby
scalone
0
150
Concurrency in the imperative and functional world
scalone
0
180
Git e Github
scalone
0
72
Git, o que é, do que é feito, para que serve?
scalone
0
310
DaFunk, IOT Framework in Ruby
scalone
0
170
Uzmenino Marketplace
scalone
0
110
Other Decks in Programming
See All in Programming
remix + cloudflare workers (DO) docker上でいい感じに開発する
yoshidatomoaki
0
120
PHPによる"非"構造化プログラミング入門 -本当に熱いスパゲティコードを求めて- #phperkaigi
o0h
PRO
0
1.1k
小さく段階的リリースすることで深夜メンテを回避する
mkmk884
2
130
英語文法から学ぶ、クリーンな設計の秘訣
newnomad
1
270
本当だってば!俺もTRICK 2022に入賞してたんだってば!
jinroq
0
250
List とは何か? / PHPerKaigi 2025
meihei3
0
560
ベクトル検索システムの気持ち
monochromegane
30
9k
マルチアカウント環境での、そこまでがんばらない RI/SP 運用設計
wa6sn
0
600
requirements with math
moony
0
520
Denoでフロントエンド開発 2025年春版 / Frontend Development with Deno (Spring 2025)
petamoriken
1
1.3k
ステートソーシング型イベント駆動の視点で捉えるCQRS+ES
shinnosuke0522
1
320
Node.js, Deno, Bun 最新動向とその所感について
yosuke_furukawa
PRO
6
3k
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Being A Developer After 40
akosma
90
590k
GraphQLとの向き合い方2022年版
quramy
45
14k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.7k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.4k
Typedesign – Prime Four
hannesfritz
41
2.6k
Why Our Code Smells
bkeepers
PRO
336
57k
Transcript
TDD Test Driven Development
THIAGO SCALONE
@SCALONE
TDD Test Driven Development
O QUE É TESTE?
–Wikipédia “O teste do software é a investigação do software
a fim de fornecer informações sobre sua qualidade em relação ao contexto em que ele deve operar. Isso inclui o processo de utilizar o produto para encontrar seus defeitos.”
O QUE É TDD? Desenvolvimento Orientado a Teste
– Wikipédia “Processo de desenvolvimento de software aonde se escreve
o teste primeiro”
TESTE PRIMEIRO? show me the code!
MUNDO REAL
HISTORINHA
ERA UMA VEZ UM PROJETO
LINDO MARAVILHO
O TEMPO
O PROJETO SE TRANSFORMA
CÓDIGO LEGADO
LENTO
CLIENTES IRRITADOS
DIFÍCIL MANUTENÇÃO
Alteração
Alteração Teste Manual
Alteração Teste Manual
Alteração Teste Manual Produção
Alteração Teste Manual Produção
Alteração Teste Manual Produção
CÓDIGO LEGADO SEM TESTE
–Kent Beck “The more stress you feel, the less testing
you will do”
–Kent Beck “The less testing you do, the more errors
you will make”
NÃO POSSO MUDAR O PASSADO
PRECISO ESCREVER TESTES
EU AMO SOFTWARE
VAMOS VOLTAR UM POUCO
HISTÓRIA DO TDD
12000 BC - FOGO
18XX - PRIMEIRO PROGRAMA Ada Lovelace <3
18XX - PRIMEIRO BUG Preciso de testes….
1957 - CITAÇÃO DE TESTES “The first attack on the
checkout problem may be made before coding is begun” - Michael Bolton
1959/63 - NASA PROJECT MERCURY
1989 - JERRY WEINBERG Cartões perfurados!!!
1994 - KENT BECK SUnit, primeiro framework para testes, em
Smaltalk
1995 - MOVIMENTO XP Kent Beck outra vez
EXTREME PROGRAMMING Feedback rápido Presumir simplicidade Mudanças incrementais Abraçar mudanças
Trabalho de alta qualidade.
COMO TDD?
BABY STEPS
RED, GREEN, REFACTOR
RED GREEN REFACTOR
RED GREEN REFACTOR
RED GREEN REFACTOR
RED GREEN REFACTOR
COBERTURA
DIMINUIR DEPENDÊNCIA
MODULAR
O QUE É TEST ANTES?
PREVENÇÃO DE BUGS
–Robert C. Martin “Testing is about trust.”
CONFIANÇA
DOCUMENTAÇÃO
BOM DESIGN Código legível Pequeno Simples
QUALIDADE
CLIENTE FELIZ
SONO
E AONDE NÃO APLICA?
SISTEMAS MUITOS DISTRIBUIDOS Dependência entre serviços
AMBIENTE NÃO REPRODUZÍVEL Satélite Embedded Kernel Space Alguns drivers
PROTÓTIPOS Não faz sentido
HISTORINHA?
TDD
SONO
NÃO
NO SILVER BULLET
OBRIGADO
LIVROS
TEST DRIVEN DEVELOPMENT: BY EXAMPLE
GROWING OBJECT- ORIENTED SOFTWARE, GUIDED BY TESTS
TEST DRIVEN DEVELOPMENT FOR EMBEDDED C
TEST-DRIVEN DEVELOPMENT A PRACTICAL GUIDE
TEST DRIVEN DEVELOPMENT: TESTE E DESIGN NO MUNDO REAL COM
RUBY