Dic
05

Symfony, PHPUnit y TDD, en el PHPSevilla

Las instalaciones de Emergya han abierto sus puertas para acoger el evento de noviembre del grupo de PHP Sevilla en el que tres de nuestros compañeros de Emergya, Sergio Elvira, Roberto Becerra y José Antonio Dorado, hablaron de TDD, PHP Unit y SymfonyZero y SymfonyZero-API, respectivamente.

El primero en intervenir fue Sergio Elvira que explicó qué es TDD, su ciclo de vida, el flujo de su funcionamiento y una comparativa con FDD. Además, Sergio insistió en que, cuando se acaban de escribir y comprobar los tests, es de vital importancia refactorizar para limpiar nuestro código y evitar duplicación. Teniendo esto en cuenta, conseguimos la validación de los tests.  
 

Después fue el turno de Roberto Becerra que dio una breve introducción del framework de testing PHP Unit desde cero, orientado a aquellos que dan sus primeros pasos con la herramienta. Roberto también nos puso un ejemplo de cómo testear un proyecto usando esta herramienta e insistió en que las aserciones deben ser lo más específicas posibles.

Finalmente, José Antonio Dorado cerró el evento hablando de SymfonyZero y SymfonyZero-API y los asistentes pudieron asistir a uno de los grandes objetivos que nos habíamos marcado para este 2016, la liberación de estos dos repositorios:
Según ha comentado José Antonio, “ha sido un trabajo largo, en el que muchos hemos participado y no sólo ha servido para construir dos herramientas que nos van a facilitar mucho el trabajo, sino que también ha servido para aprender, mejorar y descubrir nuevos conceptos sobre Symfony”.
 

El motivo de realizar este trabajo es que se observó que, en la mayoría de los proyectos, había una serie de tareas que se repetían, especialmente en las primeras fases del desarrollo. Así, y una vez analizado esto, surgió la idea de desarrollar dos herramientas que ayudarán a agilizar las primeras etapas del desarrollo de proyectos Symfony.

Concretamente, SymfonyZero está preparado para ser usado en proyectos en los que Symfony es el core de la aplicación, donde se utiliza Twig como motor de plantillas y hay una serie de funcionalidades que se repiten bastante como son la gestión de usuarios, paneles de administración, integración con redes sociales, formularios de contacto, paginación, etc. Y, SymfonyZero-API está orientado a otro tipo de arquitecturas donde Symfony se utiliza como una API Rest, que se puede integrar con diferentes aplicaciones desarrolladas en otras tecnologías mediante una interfaz de comunicación en JSON.

El evento, al que acudieron una veintena de personas, fue un éxito, ya que todos se mostraron encantados y muy interesados con las explicaciones de nuestros compañeros de Emergya sobre las novedades relativas a Symfony, PHP Unit y TDD.