16 |
16 |
17 $ make run-test-tier1 |
17 $ make run-test-tier1 |
18 $ make run-test-jdk_lang JTREG="JOBS=8" |
18 $ make run-test-jdk_lang JTREG="JOBS=8" |
19 $ make run-test TEST=jdk_lang |
19 $ make run-test TEST=jdk_lang |
20 $ make run-test-only TEST="gtest:LogTagSet gtest:LogTagSetDescriptions" GTEST="REPEAT=-1" |
20 $ make run-test-only TEST="gtest:LogTagSet gtest:LogTagSetDescriptions" GTEST="REPEAT=-1" |
21 $ make run-test TEST="hotspot/test:hotspot_gc" JTREG="JOBS=1;TIMEOUT=8;VM_OPTIONS=-XshowSettings -Xlog:gc+ref=debug" |
21 $ make run-test TEST="hotspot:hotspot_gc" JTREG="JOBS=1;TIMEOUT=8;VM_OPTIONS=-XshowSettings -Xlog:gc+ref=debug" |
22 $ make run-test TEST="jtreg:hotspot/test:hotspot_gc hotspot/test/native_sanity/JniVersion.java" |
22 $ make run-test TEST="jtreg:test/hotspot:hotspot_gc test/hotspot/jtreg/native_sanity/JniVersion.java" |
23 $ make exploded-run-test TEST=hotspot_tier1 |
23 $ make exploded-run-test TEST=tier2 |
24 |
24 |
25 ### Configuration |
25 ### Configuration |
26 |
26 |
27 To be able to run JTReg tests, `configure` needs to know where to find the |
27 To be able to run JTReg tests, `configure` needs to know where to find the |
28 JTReg test framework. If it is not picked up automatically by configure, use |
28 JTReg test framework. If it is not picked up automatically by configure, use |
44 TEST="tier1"`, but the latter is more tab-completion friendly. For more complex |
44 TEST="tier1"`, but the latter is more tab-completion friendly. For more complex |
45 test runs, the `run-test TEST="x"` solution needs to be used. |
45 test runs, the `run-test TEST="x"` solution needs to be used. |
46 |
46 |
47 The test specifications given in `TEST` is parsed into fully qualified test |
47 The test specifications given in `TEST` is parsed into fully qualified test |
48 descriptors, which clearly and unambigously show which tests will be run. As an |
48 descriptors, which clearly and unambigously show which tests will be run. As an |
49 example, `:tier1` will expand to `jtreg:jdk/test:tier1 |
49 example, `:tier1` will expand to `jtreg:$(TOPDIR)/test/hotspot/jtreg:tier1 |
50 jtreg:langtools/test:tier1 jtreg:nashorn/test:tier1 jtreg:jaxp/test:tier1`. You |
50 jtreg:$(TOPDIR)/test/jdk:tier1 jtreg:$(TOPDIR)/test/langtools:tier1 |
51 can always submit a list of fully qualified test descriptors in the `TEST` |
51 jtreg:$(TOPDIR)/test/nashorn:tier1 jtreg:$(TOPDIR)/test/jaxp:tier1`. You can |
52 variable if you want to shortcut the parser. |
52 always submit a list of fully qualified test descriptors in the `TEST` variable |
|
53 if you want to shortcut the parser. |
53 |
54 |
54 ### JTReg |
55 ### JTReg |
55 |
56 |
|
57 JTReg tests can be selected either by picking a JTReg test group, or a selection |
|
58 of files or directories containing JTReg tests. |
|
59 |
56 JTReg test groups can be specified either without a test root, e.g. `:tier1` |
60 JTReg test groups can be specified either without a test root, e.g. `:tier1` |
57 (or `tier1`, the initial colon is optional), or with, e.g. |
61 (or `tier1`, the initial colon is optional), or with, e.g. `hotspot:tier1`, |
58 `hotspot/test:tier1`, `jdk/test:jdk_util`. |
62 `test/jdk:jdk_util` or `$(TOPDIR)/test/hotspot/jtreg:hotspot_all`. The test |
59 |
63 root can be specified either as an absolute path, or a path relative to the |
60 When specified without a test root, all matching groups from all tests roots |
64 OpenJDK top directory, or the `test` directory. For simplicity, the hotspot |
|
65 JTReg test root, which really is `hotspot/jtreg` can be abbreviated as |
|
66 just `hotspot`. |
|
67 |
|
68 When specified without a test root, all matching groups from all test roots |
61 will be added. Otherwise, only the group from the specified test root will be |
69 will be added. Otherwise, only the group from the specified test root will be |
62 added. |
70 added. |
63 |
71 |
64 Individual JTReg tests or directories containing JTReg tests can also be |
72 Individual JTReg tests or directories containing JTReg tests can also be |
65 specified, like `hotspot/test/native_sanity/JniVersion.java` or |
73 specified, like `test/hotspot/jtreg/native_sanity/JniVersion.java` or |
66 `hotspot/test/native_sanity`. You can also specify an absolute path, to point |
74 `hotspot/jtreg/native_sanity`. Just like for test root selection, you can |
67 to a JTReg test outside the source tree. |
75 either specify an absolute path (which can even point to JTReg tests outside |
|
76 the source tree), or a path relative to either the OpenJDK top directory or the |
|
77 `test` directory. `hotspot` can be used as an alias for `hotspot/jtreg` here as |
|
78 well. |
68 |
79 |
69 As long as the test groups or test paths can be uniquely resolved, you do not |
80 As long as the test groups or test paths can be uniquely resolved, you do not |
70 need to enter the `jtreg:` prefix. If this is not possible, or if you want to |
81 need to enter the `jtreg:` prefix. If this is not possible, or if you want to |
71 use a fully qualified test descriptor, add `jtreg:`, e.g. |
82 use a fully qualified test descriptor, add `jtreg:`, e.g. |
72 `jtreg:hotspot/test/native_sanity`. |
83 `jtreg:test/hotspot/jtreg/native_sanity`. |
73 |
84 |
74 ### Gtest |
85 ### Gtest |
75 |
86 |
76 Since the Hotspot Gtest suite is so quick, the default is to run all tests. |
87 Since the Hotspot Gtest suite is so quick, the default is to run all tests. |
77 This is specified by just `gtest`, or as a fully qualified test descriptor |
88 This is specified by just `gtest`, or as a fully qualified test descriptor |