Topics

Require tests for major feature editions? (Issue #2)


David A. Wheeler
 

In pull request #1, Greg KH made this suggestion for a criterion: "Tests for major feature additions as without some kind of test being present, it's hard to verify if something new even works. This is now the "unofficial" rule for the kernel, as we have been burned by this in the past (feature additions that never even worked)."

I like this idea, and have added an issue tracker here: https://github.com/linuxfoundation/cii-best-practices-badge/issues/2

Please comment on it if you agree/disagree. I agree that it's a best practice, and I'd like to add it. The question is, is this widespread enough to require it as a criterion? In particular, I think if it's a criterion it needs to be written in the docs on how to propose changes and actually practiced... not just an aspiration. Aspirations are cheap :-).

One *good* reason to add this criterion is that it helps projects move closer to continuous integration. I think continuous integration is an excellent thing to do, but it's not clear that it's widespread enough (yet) to require it for a basic best practice list. It might be useful to create a draft "next stage" list.... noting that these aren't requirements for the basic level, but are especially likely to be part of a higher-level set of criteria. Continuous integration is easily a candidate for a higher level.

--- David A. Wheeler