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.*.


иногда лучше изображение...

enter image description here

Как вы можете видеть, вы можете также использовать .


У меня была такая же проблема с composer и найдена с помощью.у фара не было никаких проблем. Сегодня я только что понял шлепает по лбу это было вызвано только установкой phpunit через composer, а затем не переиндексированием папки поставщика.

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

Reindex, все работает нормально.