Hey Все установленные PHPUnit в моем Symfony3 проекте, и когда я вбежал в моем терминале бен/PHPUnit -c приложение я получаю эту ошибку:Symfony3 PHPUnit XML
Could not load XML from empty string
гугле его, и оказалось, что мне нужно, чтобы приложение phpunit.xml файл в моем приложении/каталоге, так что я сделал, и это выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<!-- http://www.phpunit.de/manual/current/en/appendixes.configuration.html -->
<phpunit
backupGlobals = "false"
backupStaticAttributes = "false"
colors = "true"
convertErrorsToExceptions = "true"
convertNoticesToExceptions = "true"
convertWarningsToExceptions = "true"
processIsolation = "false"
stopOnFailure = "false"
syntaxCheck = "false"
bootstrap = "autoload.php" >
<testsuites>
<testsuite name="Project Test Suite">
<directory>../src/*/*Bundle/Tests</directory>
<!--directory>../src/*/Bundle/*Bundle/Tests</directory-->
</testsuite>
</testsuites>
<!--
<php>
<server name="KERNEL_DIR" value="/path/to/your/app/" />
</php>
-->
<filter>
<whitelist>
<directory>../src</directory>
<exclude>
<directory>../src/*/*Bundle/Resources</directory>
<directory>../src/*/*Bundle/Tests</directory>
<!--directory>../src/*/Bundle/*Bundle/Resources</directory>
<directory>../src/*/Bundle/*Bundle/Tests</directory-->
</exclude>
</whitelist>
</filter>
</phpunit>
так что теперь он работает нормально, но вопросы, которые я не могу найти открытые ответы являются:
Зачем нужен файл php для этого файла, я вижу, что файл показывает phpunit, где искать тесты, но это все?
Я создал этот файл вручную, чтобы создать его автоматически с помощью команды терминала.
Насколько я знаю
<whitelist>
- где phpunit разрешено «смотреть»? и<exlude>
его где phpunit не разрешено «смотреть»? и если да, то почему бы это<directory>../src/*/*Bundle/Tests</directory>
быть в<exlude>
, если это где тест.
Благодарим вас за очень полезную информацию. Теперь он работает, но мне нужно переместить и переименовать phpunit.xml.dist из ./ корневой директории в каталог приложения, любую идею, почему ?. Также должен ли phpunit.xml указывать на VCS только phpunit.xml.dist, а когда проект клонирован, обновление для компоновщика установит phpunit.xml на основе n phpunit.xml.dist? – John
Приятно слышать. Да, точно только зафиксировать '.dist'. Для автоматического переименования вам, вероятно, придется использовать скрипт. Посмотрите на [Incenteev/ParameterHandler] (https://github.com/Incenteev/ParameterHandler). Это пакет, который используется для файла Symfony2 'parameters.yml.dist'. – ferdynator