#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.*»