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 IRL
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
delucas
September 09, 2014
Technology
1
120
TDD IRL
Charla de TDD dada en la UTN F.R. Rosario, el día 09/09/2014
delucas
September 09, 2014
Tweet
Share
More Decks by delucas
See All by delucas
TBD - Too Busy Disorder
delucas
0
550
Gamification
delucas
1
130
Pedacitos de rubí
delucas
0
81
¿Aún no usás git y GitHub?
delucas
0
53
Desarrollo de Aplicaciones Móviles - Maestría en Informática
delucas
0
140
You already git started. Now... what?
delucas
3
150
TDD IRL reloaded
delucas
0
92
Adaptación de una plataforma de e-learning a nuevos entornos
delucas
0
250
Introducción wecode.io
delucas
0
71
Other Decks in Technology
See All in Technology
オープンウェイトのLLMリランカーを契約書で評価する / searchtechjp
sansan_randd
3
650
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
330
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
140
生成AI時代にこそ求められるSRE / SRE for Gen AI era
ymotongpoo
5
2.6k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
Context Engineeringの取り組み
nutslove
0
280
あたらしい上流工程の形。 0日導入からはじめるAI駆動PM
kumaiu
5
750
データ民主化のための LLM 活用状況と課題紹介(IVRy の場合)
wxyzzz
2
660
なぜ今、コスト最適化(倹約)が必要なのか? ~AWSでのコスト最適化の進め方「目的編」~
htan
1
110
Digitization部 紹介資料
sansan33
PRO
1
6.8k
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.1k
FinTech SREのAWSサービス活用/Leveraging AWS Services in FinTech SRE
maaaato
0
120
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
GraphQLとの向き合い方2022年版
quramy
50
14k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
89
A designer walks into a library…
pauljervisheath
210
24k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
90
GitHub's CSS Performance
jonrohan
1032
470k
Technical Leadership for Architectural Decision Making
baasie
1
240
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Building the Perfect Custom Keyboard
takai
2
680
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
420
Design in an AI World
tapps
0
140
Designing for Timeless Needs
cassininazir
0
130
Transcript
#tdd @wecodeio @luke_ar
Expectativas • 1:30 horas • 27 diapositivas • 1 demostración
en vivo* • código simple, en Java * “en vivo”, significa que puede fallar :)
¿Testing?
None
None
None
None
@Test public void prueba(){ assertEquals(5, sumar(2, 3)); }
@Test public void prueba(){ assertEquals(5, sumar(2, 3)); } sumar() assertEquals
2 3 ? 5
Test Driven Development
@Test public void prueba(){ assertEquals(5, sumar(2, 3)); }
@Test public void prueba(){ assertEquals(5, sumar(2, 3)); }
@Test public void prueba(){ assertEquals(5, sumar(2, 3)); }
@Test public void prueba(){ assertEquals(5, sumar(2, 3)); }
El Mantra
El Mantra mínimo código nueva prueba mejoras de diseño
demostración factores primos
¿Dónde está la magia? • Ciclos cortos • No es
sólo sobre las pruebas • Pruebas → diseño
Reglas de oro • Nunca se escribe una nueva funcionalidad
si hay algún test que falla. • Nunca se escribe código si no hay un test que evidencie su ausencia. • No se debe escribir más código del necesario para hacer pasar la prueba.
Refactoring • Cambiar estructura sin cambiar comportamiento. • Remueve duplicación.
• Vuelve el código más simple. • Vuelve el código más legible. • Se debe aplicar tanto al código productivo como a las pruebas.
¿Por qué no le gusta a la industria? • Tiempos
• Tiempos • Tiempos • Tiempos
TDD no es hace magia • No deriva arquitectura: deriva
diseño local • Se necesita una visión de arquitectura, aunque se valide con TDD • No es necesario ser miope
Consejos • Siempre tener una lista junto al teclado para
anotar los casos que se nos ocurran extemporáneamente. • Practicar con pequeños ejemplos reales. • Practicar con problemas conocidos.
El secreto “A medida que los tests se vuelven más
específicos, el código se vuelve más genérico”
Recursos • TDD by example, de Kent Beck http://amzn.to/1k24MZ7 •
Roman Numerals Kata, de Jim Weirich http://youtu.be/983zk0eqYLY • http://codekata.com/ • https://github.com/garora/TDD-Katas
¿Preguntas?
Gracias :) @wecodeio @luke_ar