Re: [HACKERS] Show backtrace when tap tests fail
От | ilmari@ilmari.org (Dagfinn Ilmari Mannsåker) |
---|---|
Тема | Re: [HACKERS] Show backtrace when tap tests fail |
Дата | |
Msg-id | d8jzi9qe86x.fsf@dalvik.ping.uio.no обсуждение исходный текст |
Ответ на | Re: [HACKERS] Show backtrace when tap tests fail (Andrew Dunstan <andrew.dunstan@2ndquadrant.com>) |
Ответы |
Re: [HACKERS] Show backtrace when tap tests fail
|
Список | pgsql-hackers |
Andrew Dunstan <andrew.dunstan@2ndquadrant.com> writes: > On 09/19/2017 01:31 PM, Andres Freund wrote: >> Hi, >> >> I've had a couple cases where tap tests died, and I couldn't easily see >> where / why. For development of a new test I found it useful to show >> backtraces in that case - just adding a >> use Carp::Always; >> at the start of the relevant module did the trick. >> >> I'm wondering if we shouldn't always do so if the module is >> installed. I.e. have PostgresNode or something do something like I think TestLib would be a better place, since PostgresNode uses TestLib and there are some tests that use TestLib but notf PostgresNode. >> # Include module showing backtraces upon failures. As it's a >> non-standard module, don't fail if not installed. >> eval { use Carp::Always; } >> >> Comments? > > Or maybe Devel::Confess ? Devel::Confess is more thorough, so +1 on that. > In an eval you need a 'require' rather than a 'use', AFAIK. Yes, because 'use' happens as soon as the statement is parsed at compile time, long before the eval { } gets executed. Devel::Confess does its setup in the 'import' method (called implicitly by 'use'), so we'd need: eval { require Devel::Confess; Devel::Confess->import }; -- "The surreality of the universe tends towards a maximum" -- Skud's Law "Never formulate a law or axiom that you're not prepared to live withthe consequences of." --Skud's Meta-Law -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
В списке pgsql-hackers по дате отправления: