Вопрос

Я хотел бы упаковать Phpunit и различные другие зависимости от тестирования в PHAR и поместить это в SVN. Таким образом, я могу запустить Phpunit на любой клиентской машине без необходимости груши. Можно ли это сделать?

Это было полезно?

Решение

Текущий статус:

Работа над phpunit.phar началась в phpunit repo Но сгенерированный фар не стабилен и не является полным.

Если он попадет туда, будут официальные релиза


Оригинальный ответ:

Если вы сможете, я дам вам 500 Rep, 100 баксов и моего первого рождения .. ну нет ... только первые два.

Быть серьезным:

Я рассказывал создателю Phpunit по этой теме, по крайней мере, на 3 конференциях сейчас и хорошо ... это не кажется возможным.

Есть несколько проблем с этим. Во -первых, Phpunit порождает новые процессы PHP для изоляции тестирования. Проблема в том, что фар не может сказать, как назвал исполняемый файл PHP. Поэтому, если вы запустите PhpUnit с пользовательской скомпилированной версией, он будет использовать PHP «по умолчанию», установленную для создания изолированных тестов.

Во -вторых, насколько я знаю, и мне сказали, что в фар невозможно помещать статические файлы, такие как изображения и CSS. Что делает генерирующее покрытие кода намного сложнее. Это потребует некоторой работы над этой частью.

Существуют и другие проблемы, которые я не могу вспомнить, в точности имеющую дело с тем, что XDebug может предоставить охват кода для PHAR (и Phpunit полагаясь на не генерировать избыточный доход для собственного кода и так) и других вещей.

There once was a phar Но, насколько я понимаю, это просто не сработает с текущим состоянием фпунита и никогда не В самом деле работал полностью.


Я не говорю, что это не может быть сделано, что разные люди уже отказались от создания Phpunit.Phar, включая парня, как его развивает. (Это только мое впечатление, я, конечно, не могу говорить за Себастьян здесь и может быть совершенно неправ, принять это как небольшой отказ от ответственности)

Вставить Phpunit в SVN

Вам не нужно строить.

Для моей компании я поддерживаю SVND -версию Phpunit. Это не рекомендуемый способ его использования, но он работает без особых проблем!

Следовать "using from a git checkout" Инструкции на сайте Phpunit GitHub. Анкет Затем вам нужно поместить эти файлы в свой PHP, включающий путь, и он работает.

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

Другие советы

От Новая страница Phpunit:

Мы распространяем архив PHP (PHAR), который содержит все необходимое для использования PhpUnit. Просто скачайте его из здесь, сделайте его исполняемым, и положите в свой путь $, например ...

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top