YellowCode is when all tests that are expected to pass, do pass. However, some testcases may have been coded to report "Failed, as expected." These tests represent known problems or new features for which test cases have been written and committed, but for which the fix or feature has not yet been written. This supports
ExtremeVersionControl.
If the test tools doesn't support yellow code, this is an
AntiPattern, because one has to inspect the
RedBar result to see if it really red, or just yellow.
But
YellowCode can make the bar green if you use the
UnitTestAsTickler pattern.
The
GnuGo team uses this pattern. Their
RegressionTests are more subtle than catching obvious bugs. The tests mainly track the change in strength of the program. Their system allows them to add failing tests at any time, which may or may not be immediately addressed. And the tests of course give them the refactoring safety net. At any given time there may be hundreds of failing tests outstanding. This also encourages non-coding domain experts to add tests independently of the rest of the group.
CategoryTesting