Ich versuche, alle Tests in Unterordnern meines Testverzeichnisses auszuführen. Das funktioniert lokal auf meinem Computer, aber nicht auf dem Integrationsserver.
phpunit findet die Testdateien nicht
hudson@slipstream:~/.hudson/jobs/stendhal_website/workspace$ phpunit tests
PHPUnit 3.4.5 by Sebastian Bergmann.
Time: 0 seconds, Memory: 4.50Mb
OK (0 tests, 0 assertions)
Die Testdatei existiert jedoch und ist lesbar:
hudson@slipstream:~/.hudson/jobs/stendhal_website/workspace$ find tests -name \*Test.php
tests/scripts/pharauroa/common/net/deserializerTest.php
hudson@slipstream:~/.hudson/jobs/stendhal_website/workspace$ ls -l tests/scripts/pharauroa/common/net/deserializerTest.php
-rw-r--r-- 1 hudson hudson 6957 Jul 17 12:54 tests/scripts/pharauroa/common/net/deserializerTest.php
Ich kann es starten, indem ich es explizit in der Kommandozeile von phpunit angebe:
hudson@slipstream:~/.hudson/jobs/stendhal_website/workspace$ phpunit tests/scripts/pharauroa/common/net/deserializerTest.php
PHPUnit 3.4.5 by Sebastian Bergmann.
.....
Time: 0 seconds, Memory: 5.00Mb
OK (5 tests, 32 assertions)
Was ich bisher ausprobiert habe:
Mit strace kann ich sehen, dass phpunit das Verzeichnis tests rekursiv durchsucht und sogar die Datei deserializerTest.php findet. Aber es öffnet nicht
"phpunit tests" funktioniert auf meinem lokalen Computer einwandfrei. Auf beiden Computern läuft Ubuntu Lucid 10.04 und phpunit 3.4.5. Der Server läuft in einem chroot.
Ich habe versucht, die
phpunit `find tests -name \*.php`
aber phpunit beachtet nur den ersten Parameter.
Ich weiß, dass es möglich ist, Suite-Klassen zu schreiben, aber das scheint ein Alptraum in Sachen Wartung zu sein. Ich habe das Gefühl, dass ich etwas Offensichtliches übersehe.