web-dev-qa-db-fra.com

Configuration de PHPUnit sur OSX

Bien que je sois sûr que d'autres ont finalement réussi à comprendre cela, j'ai suivi les divers documents là-bas et j'ai eu beaucoup de mal à le faire.

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

Cela semble assez facile. Cependant, selon votre configuration, vous pourriez descendre un terrier de lapin.

PEAR par exemple doit être d'une version supérieure à 1.8.1. J'avais 1.8.0 à l'époque, alors je suis allé découvrir comment mettre à jour PEAR

PEAR upgrade-all

Donne une erreur. Pas d'accès.

Sudo PEAR upgrade-all

Fonctionne, mais met à niveau l'installation PEAR appartenant à l'utilisateur 'Sudo' (et non votre compte principal ... ou quelque chose comme ça, la version courte est 5 qu'elle ne fonctionne tout simplement pas)

cd ~
pico .bash_profile

ajouter

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

vous donne le bon PEAR lorsque vous tapez PEAR, vous êtes enfin prêt pour l'étape 1 des instructions d'installation de PHPUnit.

pear channel-discover pear.phpunit.de

Erreur. Vous n'avez pas accès à/usr/local/temp

Sudo chmod 777 /usr/local/temp

Erreur. Vous n'avez pas accès à /usr/local/temp/channel.xml

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

Erreur.

Registry directory is not writeable by the current user

MAIS JE SUIS SUR UN MAC!

/sigh
/facepalm
/tears

J'ai en fait une "copie de travail" de phpunit sur ma machine. (YAY!) Le problème étrange est qu'il ne fonctionne que lorsque je tape phpunit à partir d'un dossier spécifique

cd /usr/local/PEAR
phpunit

^^ TRAVAUX

cd ~
phpunit

^^ Retours

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

Si proche mais si loin ... Je me demande si quelqu'un a son mot à dire pour que ce gars travaille bien?

47
Alex C

Ahhh .... OK ... Je pense que j'aurais pu le faire fonctionner maintenant.

la réponse était présente dans la documentation 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.

La version Mac de PEAR que j'exécutais, installait PHPUnit si j'exécutais toutes les commandes listées sous l'utilisateur "Sudo" par exemple:

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

À ce stade, tous les fichiers sont téléchargés dans/usr/local/pear mais la commande

phpunit

cherche à inclure des fichiers de/usr/lib/php/PHPUnit La solution? Pour copier le dossier PHPUnit depuis

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

OR

faire un lien symbolique

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

J'ai vu beaucoup de gens avec des problèmes similaires, mais cette solution particulière n'était apparue dans aucun des fils que j'ai vus. J'espère vous être utile :) -Alex

12
Alex C

Pour installer via le terminal:

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

chmod +x phpunit.phar

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

Nous pouvons l'installer en utilisant Homebrew

$ brew install phpunit
28
Mike Nguyen

Via homebrew (uniquement si vous avez également installé php via homebrew):

brew tap josegonzalez/php
brew install phpunit
14
Nathan Kot

Vous pouvez essayer l'installation avec Composer. De cette façon, vous isoleriez la version de PHPUnit pour le projet actuel en évitant les problèmes possibles qui pourraient survenir lors de l'utilisation d'une configuration unique à l'échelle du système pour différents projets. Comme l'indique la documentation PHPUnit ( http://phpunit.de/manual/current/en/installation.html#installation.composer ), l'installation est assez simple.

Ajoutez la dépendance à votre fichier composer.json:

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

Mettez ensuite à jour les dépendances:

composer update

Et PHPUnit est prêt à l'emploi en exécutant:

./vendor/bin/phpunit

N'oubliez pas d'ajuster ce chemin si vous modifiez le chemin d'installation composer, qui est par défaut "fournisseur".

4
jaime

Installer PHPUnit

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

chmod +x phpunit.phar

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

OU si vous avez déjà installé PHPUnit, essayez simplement cette ligne pour mettre à jour PHPUnit par terminal

 phpunit --self-update

cela mettra à jour votre phpunit.phar fichier.

3
  1. Téléchargez phpunit manuellement depuis: https://phar.phpunit.de/phpunit.phar
  2. Déplacer vers le dossier téléchargé: $ cd /to/the/download/directory
  3. Renommez le phpunit téléchargé en phpunit.phar
  4. $ chmod +x phpunit.phar
  5. $ Sudo mv phpunit.phar /usr/local/bin/phpunit
2
Mohammed Jafar