Provide three different test targets for different purposes:
* testrun = "smoke test", fast enough to run before every commit
* testci = continuous integration tests, must be known good
* testall = all test cases, for ensuring quality of a release
Switch the main "make test" from testrun to testci.
Put test cases into "database" so that they can be selected.