Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:100850 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 15665 invoked from network); 10 Oct 2017 12:35:49 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 10 Oct 2017 12:35:49 -0000 X-Host-Fingerprint: 95.144.122.1 unknown Received: from [95.144.122.1] ([95.144.122.1:20781] helo=localhost.localdomain) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 3F/F6-49033-4AEBCD95 for ; Tue, 10 Oct 2017 08:35:48 -0400 Message-ID: <3F.F6.49033.4AEBCD95@pb1.pair.com> To: internals@lists.php.net References: <1B.6B.16800.8BF99D95@pb1.pair.com> <1507637348.2615.4.camel@schlueters.de> Date: Tue, 10 Oct 2017 13:35:45 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:49.0) Gecko/20100101 Firefox/49.0 SeaMonkey/2.46 MIME-Version: 1.0 In-Reply-To: <1507637348.2615.4.camel@schlueters.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Posted-By: 95.144.122.1 Subject: Re: [PHP-DEV] Parallelised run-tests.php (patch) From: ajf@ajf.me (Andrea Faulds) Hi Johannes, Johannes Schlüter wrote: > On So, 2017-10-08 at 04:47 +0100, Andrea Faulds wrote: >> Have you long since ABANDONED every test directory besides >> Zend/tests? > > ... or ran only eext/foo/tests ;) > >> …*ahem*. Okay, enough terrible salesmanship. I felt like >> parallelising >> run-tests.php, so I did it. If you give it the flag -jX, it'll spawn >> X >> worker processes and throw batches at tests at them, and those >> worker > > This is cool! I also see (from very very very) short look on the github > diff that you have a parallelization protection for some tests, which > might share resources. Very good! I'm glad you like it! Although I discover now that I am hardly the first to attempt this. Maybe I'll be the first to get it merged :p > Kind of unrelated: Somewhere on my 10+ years old todo list I also have > the item of using FastCGI or similar for running tests to avoid running > tthrough MINIT/MSHUTDOWN for each and every test (for some we can'T > avoid due to ini requirements, but well) maybe a less hackish way for > parallelizing might be using fpm workers and async io (just to spin the > idea, maybe somebody takes it up ...) That's a reasonable idea. But I wonder if at that point, we should just use a “real” unit-testing framework, or at least a stripped-down version of one, which would run functions rather than files. PHPT is a simple format, but it requires invoking a PHP interpreter every time. We only really need to do that if we expect a fatal error or something like that… :) -- Andrea Faulds https://ajf.me/