Как использовать phpunit, установленный из композитора? - программирование
Подтвердить что ты не робот

Как использовать phpunit, установленный из композитора?

Я хочу начать модульное тестирование моего приложения symfony 2 с помощью phpunit. Я установил phpunit, используя композитор (для каждого проекта). http://www.phpunit.de/manual/current/en/installation.html

Как мне теперь запустить команду phpunit на Zend Server? У меня нет груши.

4b9b3361

Ответ 1

Если вы следовали документации, вы установили зависимость phpunit/phpunit как "dev-dependency".

Если у вас нет композитора, вам нужно сначала его установить. Это объясняется в документации: Установка * nix или Установка Windows. Если вы уже установили композитор, рекомендуется обновить композитор до последней версии, выполнив команду self-update:

$ php composer.phar self-update

После того, как вы это сделали, вам нужно установить все зависимости, включая зависимости dev. Это делается путем запуска команды update с помощью переключателя --dev:

$ php composer.phar update --dev

Все зависимости устанавливаются в каталоге vendor. PHPunit запускается с консоли. Composer автоматически помещает файлы консоли в каталог vendor/bin. Вам нужно выполнить файл phpunit:

$ vendor/bin/phpunit -c app/

Переключатель -c сообщает PHPUnit искать файл конфигурации в каталоге app, Symfony2 уже настроил правильную конфигурацию для запуска всех тестов, которые находятся в каталоге <bundle>/Tests.

ОБНОВЛЕНИЕ (05-04-2013)

Композитор изменил свои команды обновления/установки. update будет устанавливать зависимости dev по умолчанию, и если вы хотите установить зависимости dev, вам нужно использовать опцию --dev.

ОБНОВЛЕНИЕ (11-06-2013)

Composer снова изменил свои команды, команда install также установит зависимости dev.

Ответ 2

Как насчет более сложного композитора?

composer exec phpunit

Он может использоваться для каждого двоичного файла в каталоге vendor/bin.

Ответ 3

ОБНОВЛЕНИЕ (12-02-2014)

Композиторы и PHPUnit снова изменили свои команды. Команда install также установит зависимости dev:

Composer.json:

...
"require-dev": {
    "phpunit/phpunit": "3.7.*"
},

Запустите его:

$ composer.phar update --prefer-dist --dev

Теперь вы можете запускать свои тесты с помощью:

$ bin/phpunit -c /app

Приветствия,

Ответ 4

Добавьте его в качестве зависимости от dev в каталоге проекта:

composer require --dev "phpunit/phpunit=4.8.*"

Установленный phpunit теперь можно выполнить с помощью:

./vendor/bin/phpunit

Ответ 5

Для Symfony 3 добавьте "phpunit/phpunit": "5.4.*" в раздел "require-dev" в composer.json и запустите тесты из корневого каталога приложений с помощью

./vendor/bin/phpunit tests

Ответ 6

Мне нравится определять script внутри composer.json, так что я могу просто запустить:

$ composer test
# ... runs phpunit

Для этого мне нужно изменить composer.json, чтобы он содержал такую ​​запись:

"scripts": {
    "test": [
        "phpunit tests/*.php"
    ]
}