Я пытался решить эту проблему в течение довольно долгого времени.
У меня есть простой тестовый пример PHPUnit с двумя тестами. Когда я запускаю его, я получаю этот вывод:
PHPUnit 3.5.14 by Sebastian Bergmann.
.
Итак, первое утверждение выполняется, проходит. Второе утверждение, однако, вызывает некоторую ошибку PHP (исключение или что-то еще), а PHPUnit просто умирает без какой-либо информации о том, что могло пойти не так.
Вот мой phpunit.xml:
<?xml version="1.0" encoding="UTF-8"?>
<phpunit backupGlobals="false"
backupStaticAttributes="false"
colors="false"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
processIsolation="false"
stopOnFailure="true"
syntaxCheck="false"
bootstrap="bootstrap.php.cache"
>
<testsuites>
<testsuite name="Portal Test Suite">
<directory>../src/OneSolution/Portal/*Bundle/Tests</directory>
</testsuite>
</testsuites>
</phpunit>
Настройка syntaxCheck
- true
не дает дополнительной информации об ошибке. Тем не менее, он дважды печатает (перед запуском каких-либо тестов), что The filename, directory name, or volume label syntax is incorrect.
???
Итак, есть ли у кого-нибудь идеи, что я могу сделать, чтобы PHPUnit сообщал эти сообщения об ошибках (опция --verbose
тоже не помогла)?
EDIT: Я выяснил, что привело к тому, что тест завершился неудачей. Было ошибочное имя метода (я полагаю, слишком много полагаюсь на кодовую помощь). Однако это не решает основной проблемы. Любые предупреждения, ошибки или исключение не сообщаются PHPUnit.