Testing

Tipos de testing:

Unit Testing:

Se testea una funcion especifica de una clase. Las pruebas unitarias se hacen en aislamiento, es decir que si la función necesita una conexión a la base de datos, esta se hace una conexion a la base de datos simulada (fake), solo para testear la funcionalidad.

Solo se tienen que hacer un mock de la clase cuando es un servicio, no cuando es una clase del modelo del dominio.

Integration Testing

Igual que el test unitario pero con la diferencia de que si se necesita una conexión con la base de datos esta se hace de verdad.

Functional Testing

Se escriben test para comprobar la funcionalidad de un «proceso», por ejemplo cargar una pagina, rellenar un formulario, enviar la información.

PHPUnit

Magic methods Propósito
setUp Ejecutada antes de cada test
tearDown Ejecutado despues de cada test
setUpBeforeClass Ejecutado antes de cada clase. Setear algo global o estático
tearDownAfterClass Ejecutado despues de cada clase. Setear algo global o estático
onNonSuccessFulTest Ejecutado en un test no exitoso. Sirve para agregar informacion para el debug