PHPUnit и PHPStorm ... ResultPrinter.ошибка PHP
всякий раз, когда я запускаю тесты phpunit из PHPStorm, я получаю ошибку. Я предоставил больше информации ниже. Я не уверен, где я пропустил настройку настройки.
Мои Настройки
- Ubuntu
- PhpStorm именно 8.0.1
- PHPUnit 4.3.4
Подробнее:
PHPUnit.фар находится в /usr/local/bin/phpunit.phar
. У меня есть путь установки PHPUnit непосредственно в PHPStorm. Тесты запускаются из bash без проблем. Я также настроил свою конфигурацию файл phpunit.xml
в PHPUnit, который находится в корне моего проекта. The phpunit.xml
файл сообщает phpunit загрузить композитор .
Вывод PHPUnit:
/usr/bin/php -dxdebug.remote_enable=1 -dxdebug.remote_mode=req -dxdebug.remote_port=9000 -dxdebug.remote_host=127.0.0.1 /tmp/ide-phpunit.php --configuration /home/mkelley/projects/CompanyName/phpunit.xml
Testing started at 10:33 AM ...
PHPUnit 4.3.4 by Sebastian Bergmann.
Configuration read from /home/mkelley/projects/CompanyName/phpunit.xml
PHP Fatal error: Call to undefined method CompanyNameTestsBoundariesBoardMemberVotingBoundaryTest::hasExpectationOnOutput() in phar:///usr/local/bin/phpunit.phar/phpunit/TextUI/ResultPrinter.php on line 545
PHP Stack trace:
PHP 1. {main}() /tmp/ide-phpunit.php:0
PHP 2. IDE_Base_PHPUnit_TextUI_Command::main($exit = *uninitialized*) /tmp/ide-phpunit.php:500
PHP 3. PHPUnit_TextUI_Command->run($argv = *uninitialized*, $exit = *uninitialized*) /tmp/ide-phpunit.php:243
PHP 4. PHPUnit_TextUI_TestRunner->doRun($suite = *uninitialized*, $arguments = *uninitialized*) phar:///usr/local/bin/phpunit.phar/phpunit/TextUI/Command.php:186
PHP 5. PHPUnit_Framework_TestSuite->run($result = *uninitialized*) /home/mkelley/projects/CompanName/vendor/phpunit/phpunit/src/TextUI/TestRunner.php:423
PHP 6. PHPUnit_Framework_TestSuite->run($result = *uninitialized*) /home/mkelley/projects/CompanName/vendor/phpunit/phpunit/src/Framework/TestSuite.php:703
PHP 7. PHPUnit_Framework_TestCase->run($result = *uninitialized*) /home/mkelley/projects/CompanName/vendor/phpunit/phpunit/src/Framework/TestSuite.php:703
PHP 8. PHPUnit_Framework_TestResult->run($test = *uninitialized*) /home/mkelley/projects/CompanName/vendor/phpunit/phpunit/src/Framework/TestCase.php:771
PHP 9. PHPUnit_Framework_TestResult->endTest($test = *uninitialized*, $time = *uninitialized*) /home/mkelley/projects/CompanName/vendor/phpunit/phpunit/src/Framework/TestResult.php:760
PHP 10. PHPUnit_TextUI_ResultPrinter->endTest($test = *uninitialized*, $time = *uninitialized*) /home/mkelley/projects/CompanyName/vendor/phpunit/phpunit/src/Framework/TestResult.php:378
Process finished with exit code 255
Я искал Google и не смог найти аналогичную проблему. Я ценю любую помощь!
редактировать
вот мой phpunit.XML-файл. PHPStorm использует это как "использовать альтернативный файл конфигурации"
<?xml version="1.0" encoding="UTF-8"?>
<phpunit backupGlobals="false"
backupStaticAttributes="false"
colors="true"
bootstrap="./vendor/autoload.php"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
processIsolation="false"
stopOnFailure="false"
syntaxCheck="false"
>
<testsuites>
<testsuite name="Application Test Suite">
<directory>./tests/</directory>
</testsuite>
</testsuites>
</phpunit>
5 ответов
это, по-видимому, проблема с автоматической загрузкой. Когда вы загружаете свое приложение для набора тестов, вы должны инициализировать свой загрузчик, который, похоже, не происходит, поскольку что-то не найдено. Самый простой способ-использовать Composer для управления зависимостью PHPUnit и автоматической загрузки классов через
Я отвечу на свой вопрос, если кто-то еще столкнется с этой проблемой.
вопрос был самозарядные помощью PHPUnit через композитора и с помощью PHPUnit.пхар. Как только я удалил зависимость phpunit от композитора, PHPStorm смог успешно запустить все мои тесты.
проблема не в том, что вы загружаете phpunit через composer, а в том, что в composer вы используете старую версию phpUnit. В моем случае вместо использования 4.0.0 я обновился до 4.6.*.
У меня была такая же проблема с composer и найдена с помощью.у фара не было никаких проблем. Сегодня я только что понял шлепает по лбу это было вызвано только установкой phpunit через composer, а затем не переиндексированием папки поставщика.
Я не обнаружил, что у меня была эта проблема ранее при установке новых пакетов с composer, но по какой-то причине при установке phpunit он не переиндексировал папку поставщика, вызывающую неточности.
Reindex, все работает нормально.