Skip to content

Console output should clarify when a test is unfinished #1235

@briancroom

Description

@briancroom

Motivation

When running a large set of tests from the command line, if there is a single test that is long-running or has even hung it can be difficult to tell what is happening from visually scanning the console output. The "test started" event for the long-pole test may be located somewhere early in the output, followed by lots of output about other tests and suites beginning and ending. Then, once all those other tests have finished, the console output will typically go quiet, without a clear indication of the state of the run. It would be helpful if we had a way to more clearly indicate where things stand once this state has been reached.

Proposed solution

Some ideas of things we could consider that might help:

  • Emit some indicator of overall progress together with other events like tests/suites beginning and ending.
  • Emit a periodic "heartbeat" or progress update after a period of time where no console output has been produced.
  • Respond to external requests for emitting a progress update (e.g. SIGINFO, SIGUSR1)

Alternatives considered

Test timeouts are one important tool that's related, however they are not in effect by default, and timeouts are generous, still leaving significant gap in time between the point when the console output goes quiet and when the timeout fires.

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    command-line experience⌨️ enhancements to the command line interfaceenhancementNew feature or requesttriagedThis issue has undergone initial triage

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions