automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: TAP support in automake


From: Russ Allbery
Subject: Re: TAP support in automake
Date: Sat, 31 Mar 2012 18:00:38 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux)

Bob Friesenhahn <address@hidden> writes:

> Ok, now I hear that there are still log files similar to parallel-tests
> (presumably using the identical facility).  It does not seem that Russ's
> C TAP Harness offers this quite wonderful feature since the instructions
> advise to re-run just the one test to see more verbose output (similar
> to what I have experienced from perl).

Correct; my harness program doesn't currently have a way of storing log
files.  (Added to TODO.)

> An issue with using the TAP facility to reduce the number of tests (to
> fix command line length issues) is that it reduces the amount of
> available test parallelism.

Well, sort of.  TAP has the concept of multiple tests per executable, and
of course it's hard to run those in parallel without a lot of work.  But
usually what I see happen when someone converts from the more traditional
PASS/FAIL test executable test layout to TAP is not that a lot of those
tests are combined into a single test program, but rather that TAP now
allows them to report far more internal test detail about exactly what is
passing or failing in a PASS/FAIL test instead of just one status.

Viewed in that light, TAP doesn't really reduce parallelism.  prove, the
Perl driver, supports running all the TAP tests in parallel, for example.

I've not tried to support parallelism in my simple TAP driver, though, for
a few reasons: most of my packages (i.e., my personal itch) can't use much
parallelism because they have network components that create local network
sockets and would conflict with each other, none of my personal test
suites take more than 10-15 seconds to run, and implementing parallelism
in a C test harness with the portability requirements of C TAP Harness is
hard.  (For example, it's mostly impossible to use select portably without
requiring Autoconf or something similar, since the header files you have
to include vary by platform and include some mandatory header files on
some platforms that don't exist on other platforms.)  But it's a nice
feature to have, and the TAP protocol supports it and it sounds like the
Automake support for it will be there.

-- 
Russ Allbery (address@hidden)             <http://www.eyrie.org/~eagle/>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]