Я получаю следующую ошибку при попытке запустить PHPUnit из моего текущего приложения MVC Framework
Fatal error: Cannot redeclare class PHPUnit_Util_FilterIterator in /usr/local/pear/PHPUnit/Util/FilterIterator.php on line 162
Мне удалось отследить эту ошибку до комбинации нескольких вещей.
$paths = array();
$paths[] = '../m';
$paths[] = '../v';
$paths[] = '../c';
$paths[] = '/usr/local/pear';
set_include_path(implode(PATH_SEPARATOR, $paths));
Когда я комментирую
set_include_path(implode(PATH_SEPARATOR, $paths));
PHPUnit запускает тесты
когда я закомментирую
$paths[] = '/usr/local/pear';
Я получаю
Fatal error: require_once(): Failed opening required 'PHPUnit/Framework/TestCase.php'
Если я закомментирую любой другой каталог, сохраните для
$paths[] = '/usr/local/pear';
Я получаю сообщение об ошибке "невозможно переопределить".
Единственный способ запустить фактические тесты - это если я запускаю без оператора set_include_path и вручную включаю все файлы классов, которые вызываются любым отдельным модульным тестом.
Есть идеи?
EDIT:
похоже, что есть конфликт с функцией __autoload. Я все еще не совсем уверен, как решить проблему.