Я могу запускать свои индивидуальные тесты для каждой модели в плагине под названием Agg, но когда я пытаюсь запустить CakeTestSuite , я получаю сообщение об ошибке.
class ModelsTest extends CakeTestSuite { public static function suite() { $suite = new CakeTestSuite('All model tests'); $suite->addTestDirectory(TESTS . 'Case' . DS . 'Model'); return $suite; } }
Запуск этого пакета генерирует эту ошибку.
Неустранимая ошибка: класс 'PHPUnit_Util_Skeleton_Test' не найден в C: \ work \ zend \ cake \ Cake \ TestSuite \ CakeTestSuiteCommand.php в строке 77
Я использую PHP 5.3.15 и устанавливаю PHPUnit 3.7.12 с CakePHP 2.2.5
Я получаю эту ошибку при запуске тестов как через Интернет, так и через CLI.
Любая помощь будет оценена по достоинству.
ОБНОВИТЬ:
Если я ищу «PHPUnit_Util_Skeleton_Test» в папке PEAR для PHPUnit, он не найден. Мне это кажется странным. Я использую неправильную версию PHPUnit? Когда был введен этот класс?
ОБНОВИТЬ:
Кажется, что этот класс больше не используется в PHPUnit 3.7.x, и мне интересно, будет ли CakePHP 2.2 работать только с PHPUnit 3.6. Я попытался удалить пакет груши, а затем установить версию 3.6.x, но всегда устанавливает самую новую версию. Любые идеи о том, как понизить PHPUnit?
ОБНОВИТЬ:
Переход с использованием -force для установки старых версий PHPUnit не помог решить проблему. Я пробовал 3.6.12, 3.6.5 и 3.5. С 3.6.12 я получил ошибку с is_file () где-то в коде PHPUnit.
PHPUnit_Util_Skeleton_Test
доступен в PHPUnit 3.6, см. https://github.com/sebastianbergmann/phpunit/blob/3.6/PHPUnit/Util/Skeleton/Test.php
Я предлагаю удалить все пакеты phpunit и переустановить phpunit 3.6 с помощью
$ pear install phpunit/phpunit-3.6.12
Возможно, что зависимости были нарушены при переопределении единого пакета phpunit с помощью –force, и это должно исправить его.