4 ms·
It's unfortunate that TDD is always framed in terms of adding fully-automated unit tests to the test suite. That's a big commitment! The core proposition of TDD
by perrygeo 3y ago
It's unfortunate that TDD is always framed in terms of adding fully-automated unit tests to the test suite. That's a big commitment! The core proposition of TDD is that you should explicitly state what you're trying to accomplish before you code - then use empirical observations of running code to confirm your progress. Ossifying your API into the unit test suite is not the only way to accomplish it!
There are lighter tools that help you establish an assertion, run it (failure), code it, run it, repeat until success and only then solidify the API into automated tests. CLIs, shell scripting, browser tools, etc can be a powerful tool to build semi-manual acceptance tests that confirm that the whole thing works properly BEFORE committing to a particular implementation. And when in doubt, write integration tests that hit the public interface, not the internals.