phpunit y Symfony2 en Mac

Con Mac OS X trae por defecto muchas herramientas y instaladas, pero a veces no están del todo a nuestro gusto. Ya vimos antes como instalar RVM, Homebrew, Python en Mac OS X. Ahora seguimos esta serie de post instalando todo el stack de PHP (PHP, PHPUnit, Composer )…

Para terminar configurando nuestro entorno con Symfony2. Así podremos tener un entorno donde desarrollar proyectos con Symfony2 junto con test utilizando phpunit. Esto es un pequeño paso para empezar a utilizar TDD con symfony2.

Cómo instalar PHPUnit utilizando homebrew

Con homebrew es muy facil instalar PHPUnit tan solo tenemos que abrir un terminal y escribir:

brew install josegonzalez/php/phpunit
brew install josegonzalez/php/phpunit-skeleton-generator
phpunit -v


Con tan solo estos comandos ya tenemos instalado phpunit en MacOs X

Como instalar Composer en Mac

Pues lo más sencillo para instalar composer en Mac es con Homebrew

brew install josegonzalez/php/composer

Ya esta casi está todo, ahora solo nos queda configurar PHP para poder instalarle extensiones. Una de las extensiones más útiles de PHP es XDebug. COn Xdebug podemos debuguear nuestro código PHP sin esfuerzo utilizando Eclipse.

Configurando PHP, encontrando php.ini

Instalar extensiones en PHP es bastante sencillo, solo hay que instalarlas y configurar php.ini, el problema viene al intentar buscar php.ini.

En el directorio /etc podemos encontrar un archivo php.ini por defecto, lo que debemos hacer para activar php.ini en Mac es:

sudo cp /etc/php.ini.default /etc/php.ini

Ahora podemos instalar Xdebug con Homebrew

brew install php54-xdebug

Y para configurar la extensión XDebug abrimos /etc/php.ini y escribimos lo siguente en la parte de extensiones

zend_extension=/usr/local/Cellar/php54/5.4.25/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so

Al final del fichero configuramos XDebug así:

[xdebug]
xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
xdebug.max_nesting_level = 250

Listo al hacer escribir en el terminal php -v saldrá algo parecido a esto:

Instalando Symfony2 en Mac

Instalar symfony2 en Mac teniendo ya instalado todo el entorno de PHP es sencillísimo. Como ya tenemos algo de manejo con homebrew y el terminal hacer funcionar Symfony2 es cuestión de minutos

Como instalar mysql

Es sencillo solo abrir un terminal y escribir:

brew install mysql

Una vez instalado arrancamos mysql Server en Mac

mysql.server start

Si queremos que mysql inicie cada vez que arrancamos el PC y no hala que andar iniciandola solo tenemos que hacer esto:

 mkdir -p ~/Library/LaunchAgents
 ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
 launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

Ahora podemos instalarnos un cliente de Mysql, yo he elegido Mysql WorkBench, lo podemos descargar aquí:
http://dev.mysql.com/downloads/tools/workbench/

Configuramos la conexión y listo.
Por defecto el usuario es root y no hay contraseña. El puerto es 3306

Configurando la zona horaria en php.ini

Para que Symfony2 funcione correctamente tenemos que modificar php.ini, en nuestro caso está en /etc/php.ini.
Abrimos el archivo buscamos “date.timezone”, finalmente nos quedará algo así:

date.timezone = Europe/Madrid


Instalando symfony2

Utilizando composer es muy sencillo crear un nuevo proyecto SYmfony2. Solo tenemos que abrir un terminal, ir a la carpeta donde queramos crear el proyecto y escribir

composer create-project symfony/framework-standard-edition symfony/ 2.4.

Esto nos descargará todas las dependencias de symfony.

Configurando Symfony2 en Mac

Entramos dentro de la carpeta del proyecto y configuramos los permisos

 cd symfony
 chmod 0777 app/{cache,logs}
 chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/{cache,logs}

Iniciamos el servidor

php app/console server:run

Accedemos a http://localhost:8000/app_dev.php

Pinchamos en configure y configuramos los parámetros necesarios. Cuando esté todo podemos entrar en http://localhost:8000/config.php y comprobar que está todo correcto

Ya tenemos creado nuestro proyecto en symfony2

Ejecutando tests en symfony2 con phpunit

Para ejecutar los test que estemos creando solo tenemos que escribir dentro del directorio donde hemos creado el proyecto de symfony.

 phpunit -c app/


Con esto ejecutaremos todos los tests que estan en el archivo phpunit.xml.dist para ejecutar solo los test de un bundle phpunit -c app src/Acme/DemoBundle/

Conclusiones

Instalar utilizando homebrew es sencillisimo, aunque si es cierto que tener todo separado a veces es algo engorroso. Me explico, antes en windows utilizaba XAMPP, sé que en MAC también existe XAMPP e incluso MAMP pero quería tenerlo todo separado.

Anuncios

Comenta la entrada

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s