RFR: 7903785: Improve reporting for skipped tests [v4]
Daniel Jeliński
djelinski at openjdk.org
Tue Sep 10 15:43:20 UTC 2024
On Mon, 9 Sep 2024 22:42:51 GMT, Jonathan Gibbons <jjg at openjdk.org> wrote:
>> This is to support the ability to track `skipped` tests in the JDK `make test` system.
>>
>> It is somewhere between "proof of concept", "draft PR", and initial version of a real PR.
>>
>> The primary goal is to post the number of `skipped` tests in a backwards compatible way that does not break existing makefile rules or require any changes. The makefiles currently have some "fuzzy parsing" to search for named values that may appear on the `Test results:` line near the end of the `jtreg` output to the console. This PR _adds_ a new value to that line _without changing any existing values_. In particular, the `passed` value is unchanged and continues to include the `skipped` tests, as before, but for readers and tools alike, the number of skipped tests is also reported.
>>
>> The PR also exposes a previously undocumented feature, to control the formatting of that line, using a format string that can be given to `jtreg` in a system property. The set of format specifiers in that string has been extended to include format specifiers for "skipped tests" and "passed tests, excluding skipped tests".
>>
>> In exposing that feature, some design questions come to mind:
>> * the terminology of "ignored" tests is somewhat confusing -- it is about tests that were not selected by virtue of the keyword filter (and related `-k` option)
>> * if the number of `skipped` tests is interesting, there are other similar numbers that might also be interesting, such as the number of tests that were filtered out by a `@requires` tag -- which is similar to but more powerful than the keyword filter. But these extra numbers are contained within a composite filter, and may not have been so easily accessible when `jtreg` was built using older versions of JDK -- that is, before covariant returns.
>> * the `conditional space` and `conditional comma` provided as format specifiers do not work as well as intended if there is a plain-text label at the beginning of the format string.
>>
>> But to summarize, this feature is primarily about reporting the number of `skipped` tests. We can either defer supporting additional values until a subsequent PR, or put more work into this PR to expose more of these "interesting" numbers.
>
> Jonathan Gibbons has updated the pull request incrementally with one additional commit since the last revision:
>
> fix typo, reported in review comment
src/share/doc/javatest/regtest/faq.md line 947:
> 945: ### What do all those numbers in the "Test results" line mean?
> 946:
> 947: After running tests, `jtreg` prints out a line beginning `Test sesults:` followed
Suggestion:
After running tests, `jtreg` prints out a line beginning `Test results:` followed
src/share/doc/javatest/regtest/faq.md line 949:
> 947: After running tests, `jtreg` prints out a line beginning `Test sesults:` followed
> 948: by a series of labeled numbers. The numbers give details about the number of
> 949: tests that were as well as the number of tests that were not. What do they all mean?
It might be just me, but it feels like there's a verb missing here.
-------------
PR Review Comment: https://git.openjdk.org/jtreg/pull/217#discussion_r1751865175
PR Review Comment: https://git.openjdk.org/jtreg/pull/217#discussion_r1751884161
More information about the jtreg-dev
mailing list