Проблемы с PHPUnit (Linux) - PHP Fatal Error - PullRequest
13 голосов
/ 19 мая 2011

Я успешно установил PHPUnit на настольном компьютере и решил установить его на своем ноутбуке, но ... затем я пытаюсь создать тест PHPUnit Netbeans выдает ошибку "Выбранный PHPUnit (версия?.?.?) Устарел обновите его, если это возможно (минимальная версия 3.3.0). ".

Конечно, моя версия PHPUnit новее - 3.5.5-2. Где проблема?

Я использую

  • Ubuntu 11.04
  • Netbeans 6,9
  • PEAR Версия: 1.9.1
  • Версия PHP: 5.3.5-1ubuntu7.2
  • Версия Zend Engine: 2.3.0

Как я понимаю, проблема в PHPUnit. Когда я пытаюсь вызвать команду "phpunit" в терминале, я получаю PHP Fatal error:

root@ubuntu:~# phpunit –version
PHP Warning:  require_once(PHP/CodeCoverage/Filter.php): failed to open stream: No such file or directory in /usr/bin/phpunit on line 38
PHP Stack trace:
PHP   1. {main}() /usr/bin/phpunit:0
PHP Fatal error:  require_once(): Failed opening required 'PHP/CodeCoverage/Filter.php' (include_path='.:/usr/share/php:/usr/share/pear') in /usr/bin/phpunit on line 38
PHP Stack trace:
PHP   1. {main}() /usr/bin/phpunit:0
root@ubuntu:~# find / -name CodeCov*
root@ubuntu:~#

Как видите, на моем компьютере нет такого файла или папки. Что делать?

Я пытался переустановить его много раз (с помощью apt-get, pear, Synaptic PM ...), но всегда получал один и тот же результат.

Ответы [ 5 ]

24 голосов
/ 20 мая 2011

Проблема решена.

Следуйте комментарию @David Harkness Я попытался установить PHP_CodeCoverage, а затем понял, что мой установщик PEAR слишком стар.Я обновил его до 1.9.2, а затем переустановил PHPUnit.

$ wget http://pear.php.net/go-pear.phar
$ php go-pear.phar
$ pear install phpunit/PHPUnit

Что довольно странно, потому что все программное обеспечение было недавно установлено недавно.

Ответ.Как я наконец установил PHPUnit.

sudo pear channel-discover pear.phpunit.de
sudo pear channel-discover components.ez.no
sudo pear channel-discover pear.symfony-project.com
sudo pear install phpunit/PHP_CodeCoverage
sudo pear install phpunit/PHPUnit

Если у вас все еще есть проблемы, попробуйте обновить PEAR:

sudo wget http://pear.php.net/go-pear.phar
sudo php go-pear.phar
8 голосов
/ 20 мая 2013
  1. настройка автоматического обнаружения канала

    настройка конфигурации sudo pear auto_discover 1

  2. просто обновите / установите phpunit с помощью --alldeps флаг включен

    Обновление sudo pear --alldeps channel: //pear.phpunit.de/PHPUnit

и автоматически выполняетнеобходимая магия.:)

Обновление: http://pear.phpunit.de/ ушло (Возвращает 410)

3 голосов
/ 27 ноября 2012
3 голосов
/ 12 октября 2012

Другие решения здесь не работают для меня.Наконец-то я нашел решение, которое сработало для меня: http://markojakic.net/configure-phpunit-and-pear-in-ubuntu-12-04

По сути, груша по умолчанию для меня была установка двоичных файлов в мой домашний каталог.Чтобы исправить это, я выполнил следующие команды

sudo pear config-set bin_dir /usr/bin
sudo pear config-set doc_dir /usr/share/php/doc
sudo pear config-set php_dir /usr/share/php
sudo pear config-set cfg_dir /usr/share/php/cfg (make (sudo mkdir cfg) directory here)
sudo pear config-set data_dir /usr/share/php/data
sudo pear config-set test_dir /usr/share/php/test

sudo pear uninstall phpunit/PHPUnit
sudo pear install phpunit/PHPUnit
1 голос
/ 03 ноября 2011

Получить последнюю версию груши и phpunit.

pear upgrade
pear upgrade pear
pear upgrade phpunit/PHPUnit
...