- Stefan Hulls
Test Driven package Development
The purpose
TDD (Test Driven Development) simplifies the process to generate well designed package code. It further eliminates the risk of package failures due to implementation changes nearly completely. The notion of Fail (red), Pass (green), Refactor increases code quality on a continuous basis.

The process
At first a test always fails, this means that your code does not implement the feature the test is about. Next you do just the minimum in order to pass the test. So the output of the test changes from red to green. Then you refactor the implementation package and the test should remain green.

Green is a good thing!
The added value
It often boils down to the following scenario. You develop a package, everything works fine for a long time. Then you like to change something. Changing implementation code is always risky. The TDD functionality reduces that risk to a minimum, meaning that you can act faster to implement changes and sleep better!