phpunit и CodeCoverage

#php #phpunit #code-coverage

#php #phpunit #покрытие кода

Вопрос:

Я запускаю vagrant box с простым стеком lamp. Я установил phpunit глобально через composer :

 composer global require "phpunit/phpunit=4.1.*"
  

Когда я запускаю phpunit, я получаю следующую ошибку:

 PHP Warning:  require_once(PHP/CodeCoverage/Filter.php): failed to open stream: No such file or directory in /usr/share/php/PHPUnit/Autoload.php on line 46

HP Fatal error:  require_once(): Failed opening required 'PHP/CodeCoverage/Filter.php' (include_path='/home/vagrant/.composer/vendor/phpunit/php-text-template:/home/vagrant/.composer/vendor/phpunit/phpunit-mock-objects:/home/vagrant/.composer/vendor/phpunit/php-timer:/home/vagrant/.composer/vendor/phpunit/php-token-stream:/home/vagrant/.composer/vendor/phpunit/php-file-iterator:/home/vagrant/.composer/vendor/phpunit/php-code-coverage:/home/vagrant/.composer/vendor/phpunit/phpunit:/home/vagrant/.composer/vendor/symfony/yaml:.:/usr/share/php:/usr/share/pear') in /usr/share/php/PHPUnit/Autoload.php on line 46
  

Мои исследования, похоже, подразумевают, что проблема в том, что CodeCoverage не устанавливается, но у меня возникают проблемы при попытке установить это. Я пытался установить через composer и не могу заставить его работать.

С помощью Composer я попытался добавить в глобальный:

 composer global require "phpunit/php-code-coverage": "3.0.*@dev"
  

и я получаю этот вывод:

 Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - The requested package phpunit/php-code-coverage could not be found in any version, there may be a typo in the package name.
  Problem 2
    - phpunit/phpunit 4.1.3 requires phpunit/php-code-coverage ~2.0 -> no matching package found.
    - phpunit/phpunit 4.1.3 requires phpunit/php-code-coverage ~2.0 -> no matching package found.
    - Installation request for phpunit/phpunit == 4.1.3.0 -> satisfiable by phpunit/phpunit[4.1.3].

Potential causes:
 - A typo in the package name
 - The package is not available in a stable-enough version according to your minimum-stability setting
   see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details.

Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.

Installation failed, reverting ./composer.json to its original content.
  

Понятия не имею, что я делаю не так!

Ответ №1:

сначала вам нужно переустановить code-coverage 2.0

composer global требует «phpunit /php-code-coverage»: «2.0.*@dev»

затем вы устанавливаете phpunit

composer global требует «phpunit/phpunit=4.1.*»