Lesson 119

Software Testing & TDD

Pyramid · Test Doubles · Coverage · Red-Green-Refactor

1:00

How to build a reliable safety net for change using the test pyramid, test doubles, code coverage, and the red-green-refactor TDD cycle.

By the end, you can

  • Explain what tests can and cannot prove, citing Dijkstra's observation.
  • Describe the three tiers of the test pyramid and explain why the shape matters.
  • Write a unit test using the Arrange-Act-Assert pattern.
  • Name and distinguish all five test doubles, and explain when to use a stub versus a mock.
  • Explain why 100% line coverage does not guarantee correctness, and describe what mutation testing adds.
  • Carry out a TDD red-green-refactor loop for a new behavior.
  • Identify common causes of flaky tests and explain the appropriate response.
Up next in Software Engineering & Web
Questions or feedback?