Configurar PhpStorm con phpunit, Vagrant y Homestead/Laravel

Savne SAS
4 min readJan 21, 2021

Wikipedia nos da una interesante definición del desarrollo guiado por pruebas:

Desarrollo guiado por pruebas de software, o Test-driven development (TDD) es una práctica de ingeniería de software que involucra otras dos prácticas: Escribir las pruebas primero (Test First Development) y Refactorización (Refactoring). Para escribir las pruebas generalmente se utilizan las pruebas unitarias (unit test en inglés). En primer lugar, se escribe una prueba y se verifica que la nueva prueba falla. A continuación, se implementa el código que hace que la prueba pase satisfactoriamente y seguidamente se refactoriza el código escrito. El propósito del desarrollo guiado por pruebas es lograr un código limpio que funcione. La idea es que los requisitos sean traducidos a pruebas, de este modo, cuando las pruebas pasen se garantizará que el software cumple con los requisitos que se han establecido.

En este artículo te mostraremos como configurar rápidamente nuestro entorno de trabajo para poder ejecutar nuestras pruebas unitarias de forma fácil desde phpstorm.

  1. Debemos configurar nuestro CLI interpreter, para ello vamos a Settings/PHP. Seleccionamos la versión de php que maneja nuestro proyecto, el interpreter y su mapping.

2. Creamos nuestro CLI Interpreter dando click en el icono […] frente a <no interpreter> , como no tenemos nada configurado debemos dar en el icono [+]

Luego seleccionar Vagrant

En la nueva ventana damos click al icono […] frente a SSH Configurations e ingresamos la ruta de nuestro vagrant y el path de php:

Nuestro Cli Interpreter debe quedar así:

Phpstorm hará el respectivo path mapping en base a nuestro Homestead.yaml:

2. Una vez configurado nuestro CLI Interpreter vamos a “Settings/Test Frameworks”, damos click en el icono [+] y seleccionamos PHPUnit by Remote Interpreter, seleccionamos el que creamos en el paso anterior.

Automáticamente tomara los directorios de vagrant:

El archivo autoload ayuda a la carga de paquetes y phpunit.xml contiene la configuración necesarias para una correcta ejecución de phpunit como el lugar donde están los tests o las variables de entorno a aplicar.

Vamos a Edit Configurations:

3. Con nuestra configuración creada, la seleccionamos y ejecutamos nuestros tests:

Como vez, una vez des click en el triangulo verde se ejecutaran todos los tests definidos en phpunit.xml.

Algo interesante es que ahora si ingresas a tus clases test podrás ejecutarlos directamente desde el archivo y ver su estado de última ejecución:

IMPORTANTE: Se debe crear un CLI Interpreter por cada proyecto que tengamos para evitar problemas con los mapping.

Conclusión

En menos de 5 minutos con phpstorm podrás ejecutar fácilmente tus pruebas unitarias y llevar control de cuales han fallado.

Escrito por
Oscar Ricardo Sánchez Gutierréz
Programador de
vocación
CEO
Savne SAS

Síguenos en Facebook https://www.facebook.com/savne.sas o escríbenos a asesor_tecnologico@savne.net.

--

--

Savne SAS

https://savne.net empresa de desarrollo de software, enfocada en crear soluciones digitales que optimicen procesos en el campo empresarial.