Subject: bug#49309: Feature Request: Automake script based tests to print the test name before running it

From: Kasper k <[email-masked]>
Date: Fri, 2 Jul 2021 21:05:39 +0000

Hi Hans,

Thanks for taking interest. But I am not sure how would it break the parallelism of tests or anything in the test infra. The ask here is to optionally print an additional extra line before running the test regardless of order or medium in which they will eventually get rendered.

AM script check supports these options:

  *   AM_TESTS_FD_REDIRECT
  *   AM_TESTS_ENVIRONMENT
  *   AM_TESTSUITE_SUMMARY_HEADER

they solve similar problems which are more useful in one case, but not the other one. With the proposed AM_TESTS_SHOW_NAME, you can have parallelism:

    # with AM_TESTS_SHOW_NAME=1
    #
    RUN Foo
    RUN Bar
    PASS Foo
    RUN Baz
    FAILED Baz
    PASS Bar

now as to your point for my specific example where it could be useful, I agree it will not solve that particular problem (of revealing the hanging tests) perfectly in all modes and neither I am looking for the requested option to do so (and neither do the other three supported options are meant to solve everything...)

/K

________________________________
From: Hans-Bernhard Bröker <[email-masked]>
Sent: Friday, July 2, 2021 5:02 PM
To: Kasper k <[email-masked]>; Peter Johansson <[email-masked]>; [email-masked] <[email-masked]>
Subject: Re: bug#49309: Feature Request: Automake script based tests to print the test name before running it

Am 01.07.2021 um 20:59 schrieb Kasper k:

> Then if some intermittent bad situation happens in
> unattended/disposable CI environment, as an example, then we won't be
> needing to opt into any kind of workaround, it'd be just there right in
> the "regular" make-check logs; without introducing crazy amount of
> verbosity (which set -x, VERBOSE=1 etc. renders).

IMHO that whole idea loses a most, if not all of its appeal when tests
are run in parallel (which CI builds, always pressed for time, will
rather likely want to do).

As soon as there is more than one line of output, you're back to where
you were without this change, or worse.

* -Otarget or -Orecurse will undo the desired effect, because make will
keep the entire output to itself until the test is done.  That's the
back to square one part.

* -Oline or -Onone modes will print outputs from different tests
intermixed, making it virtually impossible to know which result output
belongs to which testcase.  That's considerably worse than single-line
outputs.