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 |