Re: [HACKERS] Inadequate traces in TAP tests - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: [HACKERS] Inadequate traces in TAP tests
Date
Msg-id 20170320141807.cb6p2wixy67mezvm@alvherre.pgsql
Whole thread Raw
In response to Re: [HACKERS] Inadequate traces in TAP tests  (Stephen Frost <sfrost@snowman.net>)
Responses Re: [HACKERS] Inadequate traces in TAP tests  (Stephen Frost <sfrost@snowman.net>)
List pgsql-hackers
Stephen Frost wrote:
> Andrew,

> * Andrew Dunstan (andrew.dunstan@2ndquadrant.com) wrote:

> > ISTM that the test setup and breakdown code, both in individual tests
> > and in PostgresNode.pm  should be liberally sprinkled with diag() calls
> > to make it easier to narrow down errors..
> 
> While I'm generally in favor of adding diag() info into the testing for
> when things go wrong, what I don't want to do is increase the amount of
> output that these tests produce without good cause.  I really wish there
> was a "quiet" mode for the TAP tests which didn't report anything when
> things are 'ok'.

That's diag's idea; you use it like
"ok() or diag('failed because of snow')".
so nothing is printed unless there is a problem.  You're not supposed to
call it unconditionally.

Something that would probably be helpful would be to put the server log
lines corresponding to the failure in diag(); for example we could keep
the log file open, do a seek(SEEK_END) just before running the test, and
reading from that point onwards; probably stop reading after 5 lines or
so.  They wouldn't be output unless there is a failure.  (Of course,
this'd have to be done in the harness, not the test itself, to avoid
cluttering already ugly individual test files.)

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [HACKERS] Re: [COMMITTERS] pgsql: Add TAP tests for password-based authentication methods.
Next
From: Heikki Linnakangas
Date:
Subject: Re: [HACKERS] [PATCH] Incremental sort