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
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
540
Gamification
delucas
1
130
Pedacitos de rubí
delucas
0
78
¿Aún no usás git y GitHub?
delucas
0
51
Desarrollo de Aplicaciones Móviles - Maestría en Informática
delucas
0
140
You already git started. Now... what?
delucas
3
140
TDD IRL reloaded
delucas
0
89
Adaptación de una plataforma de e-learning a nuevos entornos
delucas
0
250
Introducción wecode.io
delucas
0
70
Other Decks in Technology
See All in Technology
AI時代、“平均値”ではいられない
uhyo
8
2.5k
From Natural Language to K8s Operations: The MCP Architecture and Practice of kubectl-ai
appleboy
0
180
難しいセキュリティ用語をわかりやすくしてみた
yuta3110
0
380
OpenTelemetry が拡げる Gemini CLI の可観測性
phaya72
2
2.2k
データ戦略部門 紹介資料
sansan33
PRO
1
3.8k
CNCFの視点で捉えるPlatform Engineering - 最新動向と展望 / Platform Engineering from the CNCF Perspective
hhiroshell
0
140
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
20k
Behind Postgres 18: The People, the Code, & the Invisible Work | Claire Giordano | PGConfEU 2025
clairegiordano
0
110
ハノーファーメッセ2025で見た生成AI活用ユースケース.pdf
hamadakoji
0
430
混合雲環境整合異質工作流程工具運行關鍵業務 Job 的經驗分享
yaosiang
0
170
QA業務を変える(!?)AIを併用した不具合分析の実践
ma2ri
0
140
ゼロコード計装導入後のカスタム計装でさらに可観測性を高めよう
sansantech
PRO
1
200
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Automating Front-end Workflow
addyosmani
1371
200k
Typedesign – Prime Four
hannesfritz
42
2.8k
RailsConf 2023
tenderlove
30
1.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Making Projects Easy
brettharned
120
6.4k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Agile that works and the tools we love
rasmusluckow
331
21k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
990
How GitHub (no longer) Works
holman
315
140k
The World Runs on Bad Software
bkeepers
PRO
72
11k
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