The goal of this skill is to implement a true test driven development workflow. This means:
- Writing the simplest test for ONE discrete piece of functionality.
- Run the new test and verify that it fails as expected.
- Write the minimal amount of code needed to make the test pass.
- Run the test to verify it passes.
- Once tests pass, look for opportunities to refactor.
- Run tests once again to verify refactoring didn't break anything.
Repeat this until you've completed the functionality desired.
Remember to never do any of the following:
- Write an entire test file up front.
- Implement more than one discrete piece of functionality at a time.