Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify TDD doesn't mean write *all* tests first #1083

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

joshua-koehler
Copy link

@joshua-koehler joshua-koehler commented Jan 22, 2025

This was already written well, and the separate article ./tdd.md is excellent. However, I think the language could be a little clearer to dispell the common misconception that TDD means you write all your tests first. I trust this is clear to TDD practitioners, but I commonly see "senior" engineers misunderstand this.

Kent Beck sees this so commonly that he wrote a little article on the subject.

My org was using this document for training engineers, and am hoping this small change will make it even more helpful.

I also made a minor change to the first sentence. I understand it to be conveying one benefit of TDD, namely that it makes the code more testable, and thought it could be made more succinct. Furthermore, many tout TDD as a mechanism for design, so explicitly negating that benefit is perhaps likely to cause unintended controversy.

This was already written well, and the separate article ./tdd.md is excellent.
However, I think the language could be a little clearer to dispell the common misconception
that TDD means you write all your tests first.  I trust this is clear to TDD practitioners,
but I commonly see "senior" engineers misunderstand this.

Kent Beck sees this so commonly that he wrote a [little article](https://tidyfirst.substack.com/p/canon-tdd) on the subject.

My org was using this document for training engineers, and am hoping this small change will make it even more helpful.
Copy link

@nyouens nyouens left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a great iteration on the content, thank you for the contribution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants