HackerTube.dev

πŸš€ TDD, Where Did It All Go Wrong (Ian Cooper)

DevTernity Conference Β· 619.1K views Β· 2017-12-20 Β· 1:03:55

Open on YouTube β†—

If playback is restricted in your region, try opening the original video. Use Mark watched to add it to your marked videos.

Overview

Ian Cooper's DevTernity talk revisits Kent Beck's original TDD ideas and shows where misunderstandings crept in. It argues tests should target behaviors through public interfaces rather than implementation details, so suites support refactoring instead of resisting it.

On Hacker News

HN repeatedly calls it the best talk on testing, and many say it changed how they approach tests, mocks and the meaning of a unit.

Recommended by 11 HN people across 11 months Β· HN mentions 2018–2024

Topics

Search by tags

What people said

globular-toast Β· 2024-04 Β· Strong recommendation

This the best talk I've ever seen about testing (Ian Cooper): [VIDEO] I see he's done a much more recent follow up, which I intend to watch: [LINK] Not sure if it contains new ideas. He says the unit is not "a class" but a module. It's up to you to decide what the module does (ie. what level of abstraction it's at). More importantly, he argues against mocking and essentially "unit testing" in most cases.

Read the original HN comment β†—
globular-toast Β· 2022-01 Β· Strong recommendation

Ian Cooper talked about this (and more) 5 years ago: [VIDEO] Well worth listening to this talk. It completely changed the way I did testing.

Read the original HN comment β†—
globular-toast Β· 2021-03 Β· Strong recommendation

> Firstly if the dependency isn't doing any io, you can test your code as a whole along with its dependency. No need to mock. This the thing. People have a tendency to overuse mocks. The point of automated testing (whether it's unit tests or something else), is to enable refactoring. That's really the only reason. Code that you don't touch doesn't suddenly change its behaviour one day. In a previous jobs the developers started to go crazy with mocking and it reached a kind of singularity where essentially if a function called anything, that thing was mocked. It definitely tests each function in complete isolation, but what's the point? It makes refactoring impossible, which is the entire point of the tests in the first place! This excellent talk completely changed the way I approached testing. Every developer who writes tests needs to watch this now! [VIDEO]

Read the original HN comment β†—

Sources

Video by DevTernity Conference, played through YouTube.

Data and selection notes

HN summaries and labels may contain AI errors. HN dates refer to discussions, not video publication.

HN Library: HackerTube export (2026-10-31) and open-index/hacker-news. Upstream summaries and classifications may contain AI errors.

Views, duration and playback status refresh separately from the published catalog. When an update fails, existing data remains visible.

Selection checks
  • SaaS & AI candidates: Topic keywords do not match
  • Editor-approved picks: Editorial review is required

Rule matches identify candidates. They do not guarantee video quality or financial results.

About the library and its sources