Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.3.2
-
None
Description
Tests should be run in an incremental way, just like compile or package. If nothing has changed, the default behavior should be to skip the tests. If anything has changed, it should be to run the tests. This decision should be on a per-project basis.
A test run is needed if and only if
1. there one or more test dependencies with a timestamp later than the time of the last successful test run for this project
OR
2. there is no record of a successful test run for this project
User choices should override all incremental mechanisms. For instance, the following should have precedence.
- test=all or test=no (or their equivalent with environment variables)
- test:SomeTest
In this context, a change means anything that could affect the project, be it a change in a source file, in a resource, in a required project, in the buildfile or in build.yml.
Individual project test and build tasks should run the tests or not, based on the above criteria.
Attachments
Issue Links
- relates to
-
BUILDR-99 Tests should be run according to dependency order
- Closed