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.