Hello David,
Thanks for taking some time to responding.
By reading the documentation of Test::Harness, it seems that there are the
following options to specify how parallel execution can be done:
- $ENV{HARNESS_RULESFILE}
- testrules.yml
- t/testrules.yml
Assuming that we won't be able to configure Test::Harness ourselves when
running tests. Is that right?
Also, such configuration will depend on having CPAN::Meta::YAML available, but
it seems that this distribution is not part of CPAN::Reporter or
Task::CPAN::Reporter (but I found it as part of Bundle::CPANReporter2). Looks
like a opportunity to a pull request to Task::CPAN::Reporter if you are willing
to have it :-). Please let me know.
Is there any chance to to include such information in META.yml (assuming it
will be generated automatically by using ExtUtils::MakeMaker or whatever the
author uses)? I understand that adding new stuff might have a impact in a lot
of different places, but it seems a good thing to have.
Anyway, I think that this report
http://www.cpantesters.org/cpan/report/48eb706a-55b4-11e5-85c8-a954b33afe06 is
a test case to validate if the configuration with the additional YAML file
helps or not (at least it matches the description of the problem described
http://modernperlbooks.com/mt/2011/11/parallelism-and-test-suites.html, but I
wasn't able to identify any report with such error and with any environment
variable matching HARNESS. I'll give a try anyway.
Finally, about the documentation I could add a wiki page or update
http://wiki.cpantesters.org/wiki/CPANAuthorNotes&version=49 with that
information. But I believe this information should be also available in other
places as well (for example, http://www.cpan.org/modules/04pause.html).
That was a long e-mail... thanks for helping clarify those details!
Regards,
Alceu
De: David Golden <[email protected]>
Para: Alceu R. de Freitas Jr. <[email protected]>
Cc: CPAN Testers Discuss <[email protected]>
Enviadas: Segunda-feira, 26 de Outubro de 2015 11:53
Assunto: Re: smoker and parallelism
Also, if you do this, make sure you use a recent version of Test::Harness that
supports a rules file to hint about what can run in parallel.
Search TAP::Harness docs for "rules" and you'll find it.
An example is here:
https://github.com/mongodb/mongo-perl-driver/blob/master/t/testrules.yml
As long as you're running a new enough Test::Harness, authors can "fix" their
tests by dropping in a rules files that requires some (or all)things to run
serially.
It's not well documented in the community, which is too bad. I keep meaning to
blog about it but haven't gotten around to it yet.
David
On Sun, Oct 25, 2015 at 10:03 PM, Alceu R. de Freitas Jr.
<[email protected]> wrote:
Hi again,
I was doing some research to see if there is any way to improve smoker
performance by using parallelism. I found this article on
http://modernperlbooks.com/mt/2011/11/parallelism-and-test-suites.html that
discuss some issues when trying to do something like that.
Interesting as is, is there any feature to mark the tests results from a
distribution that was executed with parallelism? That could help the authors to
identify issues with their tests when running with parallelism. Maybe we could
even mark (in Metacpan) the distribution as capable to be tested with
parallelism.
Or maybe the distribution author could explicit ask to not test the
distribution with parallelism.
Anyway, I just brainstorming here, no patches available right now. :-)
Regards,
Alceu
--
David Golden <[email protected]> Twitter/IRC/Github: @xdg