Slide 1

Slide 1 text

PHPUnit Pruebas unitarias para PHP

Slide 2

Slide 2 text

Gestor de dependencias para PHP

Slide 3

Slide 3 text

INDICANDO DEPENDENCIAS DEL PROYECTO composer.json

Slide 4

Slide 4 text

REQUIRIENDO ELOQUENT Y PHPUNIT require-dev nos permite separar los entornos

Slide 5

Slide 5 text

COMANDOS DE INSTALACIÓN Dos formas o fuentes de instalación

Slide 6

Slide 6 text

ARCHIVOS GENERADOS POR COMPOSER Recomendable no excluir composer.lock de git

Slide 7

Slide 7 text

FUNCIÓN AUTOLOAD __autoload() podría quedar obsoleta. Este ejemplo ilustra la funcionalidad de la autocarga de clases.

Slide 8

Slide 8 text

AUTOLOAD USANDO COMPOSER Y PSR-4 Las rutas son relativas a composer.json

Slide 9

Slide 9 text

INCLUIR EL ARCHIVO AUTOLOAD Ejemplo de uso

Slide 10

Slide 10 text

HABLEMOS DE PRUEBAS

Slide 11

Slide 11 text

PHPUnit • Utiliza aserciones para verificar que el comportamiento de una unidad de código es el esperado. • Aserción (RAE): Proposición en que se afirma o da por cierto algo.

Slide 12

Slide 12 text

CONVENCIONES • Estructura y nombre de archivos: Debe imitar la estructura y nombre de los archivos del proyecto. • Las clases deben extender a PHPUnit_Framework_TestCase y el nombre debe terminar con la palabra Test. e.g: FormatTest. • Nombres de tests: deben empezar con la palabra test (en minúscula) y deben ser tan descriptivos como sea posible... testDebitoIgualCreditoComprobanteEgreso(). • Los tests deben ser métodos públicos.

Slide 13

Slide 13 text

ASSERT Ejemplo básico con PHPUnit

Slide 14

Slide 14 text

phpunit.xml Archivo de configuración

Slide 15

Slide 15 text

CORRER TESTS Ubicarse en directorio raíz del proyecto

Slide 16

Slide 16 text

HAGAMOS ALGUNOS TESTS

Slide 17

Slide 17 text

– Martin Fowler “Whenever you are tempted to type something into a print statement or a debugger expression, write it as a test instead”

Slide 18

Slide 18 text

https://github.com/jtrezza/PHPUnitRed5G Repositorio de GitHub

Slide 19

Slide 19 text

GRACIAS