Skip to content
#

Test-driven development

Test-driven development (TDD) is a software development process relying on software requirements being converted to test cases before software is fully developed, and tracking all software development by repeatedly testing the software against all test cases. This is as opposed to software being developed first and test cases created later. Programmers also apply the concept to improving and debugging legacy code developed with older techniques.

Process

  1. Add a test
  2. Run all tests. The new test should fail for expected reasons
  3. Write the simplest code that passes the new test
  4. All tests should now pass
  5. Refactor as needed, using tests after each refactor to ensure that functionality is preserved
  6. Repeat.

    Here are 307 public repositories matching this topic...

    workflow

    The type-safe, event-driven workflow orchestration library that scales with your business. Build robust, distributed workflows in Go with compile-time safety, automatic retries, and horizontal scaling out of the box. Integrate with your existing tech stack using adapters 🚀

    • Updated Apr 1, 2026
    • Go

    Created by Kent Beck, D.D. McCracken

    Released 1957

    Followers
    64 followers
    Website
    github.com/topics/tdd
    Wikipedia
    Wikipedia

    Related topics

    atdd bdd continuous-testing extreme-programming testing