Bryan Tong Minh wrote:
On Sun, Mar 27, 2011 at 3:33 AM, Platonides wrote:
Come on. It is easy enough to check if your revision is the culprit.
svn up -r r80247 cd tests/phpunit/ make noparser
Which takes approximately one hour to run. We should fix this, because otherwise nobody is going to run the unit tests before committing something.
Bryan
$ time make noparser Tests: 823, Assertions: 9512, Failures: 8, Incomplete: 42, Skipped: 3. make: *** [noparser] Error 1
real 0m45.697s user 0m10.389s sys 0m1.523s
I have mysql tmpdir set to a tmpfs filesystem (mysql doesn't support in-memory tables with BLOBs). Using a different hardware, a cold cache and creating the temporary tables on disk, it may take a few minutes, but not an hour.
On the other hand, running phpunit parser tests can take that long. Whereas the good old parserTests.php takes ~44s, too. All the other time is db overhead droping and duplicating tables, inserting articles and waiting for the db answer. I tested performing a new mysql connection instead of dropping each table separatedly, but it was slower. A change that could improve perfomance would be to insert everything on a main temporary table, and clone that with its content for each parser test. Or we could try to remove the db dependency altogether for parser tests.