RFR: 7903519 : jtreg/jtharness is missing features for basic crash testing
Christian Stein
cstein at openjdk.org
Wed May 7 14:20:39 UTC 2025
On Wed, 6 Nov 2024 01:45:22 GMT, andrlos <duke at openjdk.org> wrote:
> provides SPI for enabling external status transformations of failed tests
>
> this is a continuation of efforts after https://github.com/openjdk/jtharness/pull/59
>
> Requires newest jtharness build (not even tagged yet) that includes above mentioned change to be compiled succesfully
>
> The main idea is to provide a unified StatusTransformer interface, that can be externally implemented by users and added to a classpath in a separate jar to allow modifications of test execution status based on some elementary analysis. This can be easily used for crashtesting (filtering out only tests with jvm crashes).
What I still don't get is that you want to address a global goal "basic crash testing" with a very local mechanism, like something similar to JUnit 4 "TestRule".
I think a solution lies in between your lines:
> it proved to be much harder to filter them after, as the `hs_err_pid` log is not being copied, plus we have many tests that run via a shell script, so a generic jvm watcher is not an option as would be the option with jvm agent that we use for junit testing.. we need to cover cases, where jvm crashes even tho it has been run via a shell script (or multiple levels of scripts) and watching for `hs_err_pid.log` proved to be the most reliable and universal approach.
So, what about making sure that `jtreg` copies `hs_err_pid` files correctly?
-------------
PR Comment: https://git.openjdk.org/jtreg/pull/235#issuecomment-2858774418
More information about the jtreg-dev
mailing list