doc/testing.md
branchihse-jdk-library-branch
changeset 56687 f0d5c39dfbc1
parent 50267 1582de22e3a1
child 50885 7c728fa9d1af
equal deleted inserted replaced
56547:3b9f0b44c57b 56687:f0d5c39dfbc1
    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