8023351: Add TEST.groups in preparation to simplify rules in jdk/test/Makefile

Alan Bateman Alan.Bateman at oracle.com
Tue Aug 20 12:13:38 UTC 2013

For some time now we have been chipping away at the make files that are 
used to run the jdk tests. Mike has his wielded his axe on several 
occasions recently to remove logic and rules that are no longer needed. 
One of the next steps needs to be to remove the definitions of the test 
targets from the make file as it can't currently be shared between the 
Makefile and direct jtreg usage.

To that end, I'd like to push a TEST.groups file to define the 
corresponding jtreg groups. For the most part the proposal is to start 
up with a mostly 1-1 mapping for the existing test targets. In addition 
to groups for the normal test target then I also propose to add higher 
level groups that partition the entire test suite into three groups 
named "core", "svc" and "desktop". This makes it really easy to run 
selections of the test suite, for example "jtreg <options> :core :svc" 
will run all the core area and serviceability tests.

One other thing to mention is that David Holmes will arrive soon with 
additional groups to add selection of tests that are appropriate for the 
compact Profiles, maybe JRE vs. JDK too.

The webrev with the proposed changes is here, it's very simple:


A few things to note (as there are a few small changes from the normal 
test targets):

1. I've moved the management and java.lang.instrument tests out of the 
jdk_lang group. Once the make file targets are updated then these can be 
re-included if needed but logically they should be separated.

2. I have not moved the JSR-292 tests or stream tests, they remain in 
jdk_lang and jdk_util for now. They can easily be changed if there is 
good reason.

3. I've kept security1, security2 and security3 for now but these are 
unbalanced in execution time and ideally should all be in one group. 
Once we get to the point that concurrency is dialed up by default then 
that might be the right time to do that.

4. To my knowledge, the client teams do not use the make files and I 
don't know anyone that used the jdk_awt, etc. make targets. For now, 
I've just re-worked those targets (eliminating the beans1, beans2, 
beans3 that have not been needed since we moved the execution mode out 
of the make file). I'm sure someone in the AWT or 2D area could come up 
with cleaner definitions but as they aren't used then it shouldn't 
matter for now.


More information about the core-libs-dev mailing list