Canon TDD

Write a list of the test scenarios you want to cover Turn exactly one item on the list into an actual, concrete, runnable test Change the code to make the test (& all previous tests) pass (adding items to the list as you discover them) Optionally refactor to improve the implementation design Until the list is empty, go back to #2

Kent Beck linkedin post

Canon TDD – Vic Wu offered a visual summary. whimsical

Oscar Nierstrasz linkedin Great overview! One nitpick. With Moldable Development we Use Examples Rather than Tests. Basically these are unit tests that return a live instance that you can interact with. In this case having an example (test) without assertions is useful to start the live programming flow. The test (example) with assertions (re)uses the bare example that is the basis for live programming. The test with assertions can't be used for live programming if it fails.

DOT FROM two-level-diagram