Coverage Build Failures

Our builds are failing today on one project. They’re failing because one of the developers asked me to turn on a Clover failure target. Now if the unit test coverage falls below 75% the build fails. The 75% number was fairly arbitrary, but you have to pick something.

The fact that we’ve made it to this point is both a good and bad sign:

  • Good, because the team is insisting on a certain level of coverage.
  • Bad, because they’re still adapting to TDD. Essentially on each Sprint they’re writing a few unit tests up front, then a lot of JSF code, and then catching up on the unit tests at the end.

Our eventual solution has to be to switch over to real TDD and not leave most of the unit tests for the last part of the Sprint. Hopefully forcing builds to break if things slip will help with that for the next Sprint.