Instalar PHPUnit en MAMP

Este tutorial se basa en este otro, ampliándolo ligeramente. Para versión de MAMP: MAMP PRO 1.9.3
Primero tendremos que instalar PEAR 1.9.4 (A) y luego PHPUnit (B). ¡Suerte!

A) Instalar PEAR 1.9.4

Primero de todo, haremos que la versión de PHP con la que trabajemos en terminal sea la de MAMP, en concreto, la 5.3:
1. Abre terminal y edita tu bash_profile:

edit ~/.bash_profile

Añadiendo al final ésta línea

PATH="/Applications/MAMP/Library/bin:/Applications/MAMP/bin/php5.3/bin:$PATH"

2. Comprobemos:
Cierra terminal y vuélvelo a abrir, para comprobar que todo es correcto, escribe

echo $PATH

Debería mostrarte entre otras cosas lo que has añadido antes. Si no, algo mal has hecho: revisa las rutas de cada comando y asegúrate que edites el archivo .bash_profile que hay en tu directorio “home”, o sea, ~/ o /Users/myusername o que no hayas reiniciado tu terminal.

which php

Debería mostrarte la ruta al PHP5.3 de MAMP:

/Applications/MAMP/bin/php5.3/bin/php

3. Hacer un backup de php y pear anteriores:

cd /usr/bin
sudo cp php php.bak
sudo cp pear pear.bak
sudo rm php
sudo rm pear

4. Descargar PEAR actualizado:

cd /Applications/MAMP/bin/php5.3
curl -O http://pear.php.net/go-pear.phar
php go-pear.phar

5. Te preguntará si quieres modificar alguna configuración: cambia la ruta. Esto lo harás pulsando 1 y después intro.
Cuando te pida la nueva ruta base le pegas esta:

/Applications/MAMP/bin/php5.3

6. Te preguntará si quieres actualizar tu php.ini: dile que sí: o sea, pulsa intro.
7. Comprobemos que PEAR se ha instalado:

pear -V

Debería mostrarte algo como:

PEAR Version: 1.9.4
PHP Version: 5.3.2
Zend Engine Version: 2.3.0
Running on: Darwin (...)
which pear

debería mostrar:

/Applications/MAMP/bin/php5.3/bin/pear

B) Instalar PHPUnit

1. Necesitaremos en primer lugar descubrirle a PEAR los canales desde los que descargarse las dependencias:

pear channel-discover pear.phpunit.de
pear channel-discover pear.symfony-project.com
pear channel-discover components.ez.no

Nota: El último canal lo ví porque fallaba la instalación: el instalador te dirá que descubras otros canales si los necesitas: hazlo 🙂

2. Instalamos PHPUnit por fin!

pear install phpunit/PHPUnit

Espero que ese comando no acabe en un failed install :-S. Si es así, revisa los errores e intenta solucionarlos.
3. Miramos que php ejecute la correcta versión de PHP, esto lo haremos con un

vi /Applications/MAMP/bin/php5.3/bin/phpunit

Si la primera línea no pone lo siguiente, cámbiala

#!/Applications/MAMP/bin/php5.3/bin/php

En mi caso ponía php5 en vez de php5.3 y eso llevaba a que al ejecutar phpunit salía un error de “bad interpreter”
4. Comprobamos!

which phpunit

debería mostrar:

/Applications/MAMP/bin/php5.3/bin/phpunit
phpunit --version

debería mostrar:

PHPUnit 3.5.15 by Sebastian Bergmann.

Listo para usarse!