Video: Is TDD dead? 1: TDD and Confidence

April 5th, 2019

 

Is TDD dead? 1: TDD and Confidence

https://www.youtube.com/watch?v=z9quxZsLcfo

 

 

3 things that bother me

 

 

1) What is a unit test

can't have colaborators

can't touch db, file system

fast, <1s

-> no use out of unit tests that don't talk to colaborators

 

 

2) Driving arch through mocks

mock heavy&enabling arch

testing induced damage

"Unit testing all the things"

 

 

3) Red-Green-Refactor

sometimes it works

sometimes it does not work

 

 

 

 

===

 

 

1) What is a unit test

KentBeck

output tape, input tape, then build it

personality, anxiety

 

 

test-first appeared later

 

 

"as a programmer, do you deserver to feel confident"

 

 

ruby -> programmer happiness

 

 

 

 

minds operate differently:

write hypothesis first

"If I cannot write a test first, I have no business implementing it"

vs

"thinking through it while I write"

 

 

 

 

principle = confidence

tdd is one option

 

 

 

 

TDD flow

when clear input, and clear output

 

 

TDD trade-offs

making intermediate results testable is a cost

better design decisions

 

 

 

 

"""

If I can't test efficiently without creating a mock, I find another way to create a feedback loop for myself.

"""

-- KentBeck

 

 

 

 

Isolation

class vs test

 

 

self-testing code vs TDD

self-testing code

click of a button

within reasonable time

TDD

a way to achieve that

 

 

:(

self-testing code is side benefit

well tested code by driving design through tests is the main benifit

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Is TDD dead? [Part I]