Настройка PHPUnit на OSX - PullRequest
       28

Настройка PHPUnit на OSX

46 голосов
/ 21 июля 2010

Хотя я уверен, что другим в конечном итоге удалось это выяснить, я следил за различными документами и испытывал чертовски тяжелые времена.

http://www.phpunit.de/manual/current/en/installation.html

Звучит довольно легко.Однако, в зависимости от ваших настроек, вы можете спуститься в кроличью нору.

Например, PEAR должна иметь версию выше 1.8.1.У меня был 1.8.0 в то время, поэтому я пошел, чтобы узнать, как обновить PEAR

PEAR upgrade-all

Выдает ошибку.Нет доступа.

sudo PEAR upgrade-all

Работает, но обновляет установку PEAR, принадлежащую пользователю 'sudo' (а не вашей основной учетной записи ... или что-то в этом роде, короткая версия 5, что просто не работает)

cd ~
pico .bash_profile

add

export PATH=/usr/local/bin:$PATH

даст вам правильный PEAR при вводе PEAR, вы, наконец, готовы к шагу 1 инструкции по установке PHPUnit.

pear channel-discover pear.phpunit.de

Error.У вас нет доступа к / usr / local / temp

sudo chmod 777 /usr/local/temp

Ошибка.У вас нет доступа к /usr/local/temp/channel.xml

sudo chmod 777 /usr/local/temp/channel.xml
pear channel-discover pear.phpunit.de

Ошибка.

Registry directory is not writeable by the current user

НО Я НА МАКЕ!

/sigh
/facepalm
/tears

У меня на компьютере есть «рабочая копия» phpunit.(ДА!) Странная проблема в том, что он работает только когда я набираю phpunit из одной конкретной папки

cd /usr/local/PEAR
phpunit

^^ WORKS

cd ~
phpunit

^^ Возвращает

Warning: require_once(PHPUnit/Util/Filter.php): failed to open stream: No such file or directory in /usr/local/bin/phpunit on line 46

Fatal error: require_once(): Failed opening required 'PHPUnit/Util/Filter.php' (include_path='.:/usr/lib/php') in /usr/local/bin/phpunit on line 46

Так близко, пока так далеко ... Интересно, есть ли у кого-нибудь мнение, как этот парень работает правильно?

Ответы [ 7 ]

164 голосов
/ 11 октября 2013

Для установки через терминал:

curl https://phar.phpunit.de/phpunit.phar -L -o phpunit.phar

chmod +x phpunit.phar

mv phpunit.phar /usr/local/bin/phpunit
27 голосов
/ 01 апреля 2016

Мы можем установить его, используя Homebrew

$ brew install phpunit
14 голосов
/ 02 апреля 2014

через homebrew (только если вы установили php и через homebrew):

brew tap josegonzalez/php
brew install phpunit
12 голосов
/ 21 июля 2010

Аааа .... Хорошо ... Думаю, я мог бы заставить его работать сейчас.

ответ присутствовал в документации PHPUnit.http://www.phpunit.de/manual/3.4/en/installation.html

After the installation you can find the PHPUnit source files inside your local PEAR directory; the path is usually /usr/lib/php/PHPUnit.

Версия PEAR для Mac, на которой я работал, установила PHPUnit, если я выполнила все команды, перечисленные для пользователя «SUDO», например:

sudo pear channel-discover pear.phpunit.de
sudo pear channel-discover pear.symfony-project.com
sudo pear upgrade-all

AtНа этом этапе все файлы загружаются в / usr / local / pear, но команда

phpunit

ищет файлы из / usr / lib / php / PHPUnit Решение?Чтобы скопировать папку PHPUnit из

cp /usr/lib/pear/PHPUnit /usr/lib/php

ИЛИ

создать символическую ссылку

cd /usr/lib/php
ln -s /usr/lib/pear/PHPUnit PHPUnit

Я видел много людей с похожими проблемами, но это конкретное решениене всплывал ни в одной из тем, которые я видел.Надеюсь, вам пригодится :) -Alex

4 голосов
/ 03 апреля 2014

Вы можете попробовать установку с помощью Composer.Таким образом, вы бы изолировали версию PHPUnit для текущего проекта, избегая возможных проблем, которые могут возникнуть при использовании единой общесистемной установки для разных проектов.Как говорится в документации PHPUnit (http://phpunit.de/manual/current/en/installation.html#installation.composer), установка довольно проста.

Добавьте зависимость в ваш файл composer.json:

  {
     "require-dev": {
        "phpunit/phpunit": "4.0.*"
      }
  }

Затем обновите зависимости:

composer update

И PHPUnit готов к использованию, выполнив:

./vendor/bin/phpunit

Не забудьте настроить этот путь, если вы измените путь установки композитора, который по умолчанию равен «vendor».

3 голосов
/ 27 апреля 2016

Установите PHPUnit

curl https://phar.phpunit.de/phpunit.phar -o phpunit.phar

chmod +x phpunit.phar

mv phpunit.phar /usr/local/bin/phpunit

ИЛИ, если вы уже установили PHPUnit, просто попробуйте эту строку, чтобы обновить PHPUnit с помощью терминала

 phpunit --self-update

, это обновит ваш файл phpunit.phar.

2 голосов
/ 02 августа 2016
  1. Скачать phpunit вручную с: https://phar.phpunit.de/phpunit.phar
  2. Переместить в загруженную папку: $ cd /to/the/download/directory
  3. Переименование загруженного phpunit в phpunit.phar
  4. $ chmod +x phpunit.phar
  5. $ sudo mv phpunit.phar /usr/local/bin/phpunit
...