phpunit не находит тесты в каталоге - PullRequest
2 голосов
/ 17 июля 2010

Я пытаюсь выполнить все тесты в подпапках моего тестового каталога.Это работает локально на моем компьютере, но не на сервере интеграции.

phpunit не находит тестовые файлы

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)

Однако тестовый файлсуществует и доступен для чтения:

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

Я могу запустить его, явно указав его в командной строке phpunit:

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)

То, что я пробовал до сих пор:

Используя strace, я вижу, что phpunit рекурсивно сканирует каталог тестов и даже регистрирует файл deserializerTest.php.Но он не открывает

"phpunit tests" отлично работает на моем локальном компьютере.Оба компьютера работают под управлением Ubuntu Lucid 10.04 и phpunit 3.4.5.Сервер работает в chroot.

Я пытался использовать

phpunit `find tests -name \*.php`

, но phpunit обращает внимание только на первый параметр.

Я знаю, что это возможнонаписать наборы классов, но это похоже на кошмар обслуживания.Такое ощущение, что я упускаю что-то очевидное.

Ответы [ 2 ]

1 голос
/ 18 августа 2010

У меня была такая же проблема с hudson / phpunit, вы должны установить переменную окружения "HUDSON_HOME" и дать новый домашний каталог без "."в пути.(Поэтому обязательно переместите его из ~ / .hudson!)

См .: http://wiki.hudson -ci.org / display / HUDSON / Администрирование + Hudson

0 голосов
/ 19 июля 2010

Я пытался воспроизвести это с помощью PHPUnit 3.4.5 и текущей версии 3.4.15 на Ubunutu 10.04, и это работает в обоих случаях, поэтому обновление может не помочь.

Как вы сказали, это «должно» работать так, как вы это описали. Мое лучшее предположение заключается в том, что, возможно, существует файл «phpunit.xml» с некоторыми флагами игнорирования, который автоматически включается и присутствует только на сервере, даже если это далеко.

Вы также можете найти дополнительную справку по freenode irc на канале #phpunit.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...