automake
[Top][All Lists]
Advanced

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

Re: serial-tests option and backwards compatibility


From: Stefano Lattarini
Subject: Re: serial-tests option and backwards compatibility
Date: Thu, 17 Jan 2013 14:01:05 +0100

On 01/16/2013 10:03 PM, Russ Allbery wrote:
> Stefano Lattarini <address@hidden> writes:
> 
>> Since the parallel test harness is already present in Automake 1.11, and
>> it is in many many ways superior to the old serial driver, my suggestion
>> would be switch to in your package.  But assuming you have good reasons
>> not to do so ...
> 
> There are some cases where it's going to be quite difficult to ever run
> tests in parallel.
>
True.  Jim Meyering also raised a point like yours when I had asked if we
could consider deprecating the serial harness; and that's why we didn't
go ahead with the deprecation, but instead "just" made the parallel harness
the preferred one (becoming the default, being touted as "the way to go
in the manual", etc).  The idea is that the users should be encouraged to
use the parallel harness by default; if it turns out they have good reasons
to prefer the serial harness, they can still request it explicitly.

The documentation in this area might probably be improved, though; patches
are welcome.

> Which, I suppose, is a long-winded way of saying that I think you're going
> to want it to continue to be easy to run tests serially on an ongoing,
> permanent basis,
>
Indeed.  With automake 1.13 and later, just adding the 'serial-test' will
do the trick.

> and may even want to consider some way to mark specific
> tests as non-parallelizable (so that as many tests as possible can be run
> in parallel anyway).
>
You could use a specific recursive setup for that; as in:

  $ cat tests/Makefile.am
  SUBDIRS = . non-parallel
  AUTOMAKE_OPTIONS = parallel-tests
  # This can be run in parallel.
  TESTS = 1.test ... 100.test

  $ cat tests/non-parallel/Makefile.am
  AUTOMAKE_OPTIONS = serial-tests
  # These must be run serially.
  TESTS = 1.test ... 10.test

> [MEGA-SNIP] the rest of the message

Regards,
  Stefano



reply via email to

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