Testeando PHP con phpunit y docker

By | 31/01/2017

¿Cómo empecé con PHPUnit y Docker?

Hace unos días estuve modificando un código en PHP, y como vi que podía tornarse un poco difícil de mantener, decidí hacer unos tests unitarios. Para eso usé phpunit. Como necesitaba algo rápido y no quería instalar nada en mi pc, me puse a buscar si ya había alguna imagen de docker con todo listo para poder empezar a testear. Afortunadamente la encontré en este repositorio.

Paso a paso:

  1. docker pull phpunit/phpunit
  2. Tenemos que armar un proyecto que tenga la estructura adecuada para usar phpunit. Preparé un pequeño proyecto de ejemplo en el que vamos a basarnos.
  3. Dentro del proyecto encontramos 3 archivos:
    1. phpunit.xml: aquí le indicaremos a phpunit qué es lo que tiene que correr y dónde está ubicado
    2. MyCalculator.php: nuestra clase “productiva”. Aquí declaramos la clase MyCalculator , en la que pondremos un método llamado sumar
    3. MyCalculatorTest.php: nuestra clase de test., que invocará a la clase productiva, y hará las aserciones necesarias
  4. La imagen trae instrucciones para Linux, pero si estamos en windows, nos situamos en la raíz de nuestro proyecto y ejecutamos docker run -v [PATH_ABSOLUTO_PROYECTO]:/app –rm phpunit/phpunit tests
  5. Si todo va bien, deberíamos ver correr el test de ejemplo del proyecto

Consejos importantes para que todo funcione:

  • No olvidar traer las dependencias de php unit en nuestras clases de test: use PHPUnit\Framework\TestCase;
  • Nuestras clases de test deben extender TestCase
  • Los nombres de nuestras clases de test deben terminar con la palabra “Test”. Ejemplo: MyCalculatorTest
  • Los nombres de nuestros métodos de test deben empezar con la palabra “test”. Ejemplo: test_sumar_con2y3_retorna5

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *