Lección 10 de 12 · Lectura y práctica
Testing con Jest y Supertest
Lección práctica para aplicar Testing con Jest y Supertest dentro de Construcción de APIs RESTful con Node.js y Express, con criterios de decisión, ejemplo guiado, ejercicio y checklist de salida.
Del concepto a la práctica
Taller de esta lección
Una prueba de integración útil comprueba el contrato desde la aplicación, no la implementación privada del controlador. En una lista de lectura, interesa saber que POST /libros valida, crea y devuelve el estado esperado, y que una consulta posterior encuentra el registro con los campos acordados.
Ejemplo resuelto
Con una aplicación importable, una prueba envía { titulo: "Mar abierto", paginas: 180 } a POST /libros y espera 201. Luego solicita GET /libros, busca el título y verifica que paginas sea 180. Otra prueba envía { titulo: "Prueba inválida", paginas: -2 }, espera 400 y comprueba que la lista sigue sin ese libro.
Pruébalo
Prepara datos iniciales deterministas antes de cada prueba.
Prueba creación válida y entrada inválida.
Comprueba código y campos relevantes, no todo el texto incidental.
Limpia el estado al terminar cada caso.
Error frecuente: depender de datos creados por una prueba anterior. Corrígelo aislando el estado; el orden de ejecución no debe cambiar el resultado.
Comprueba tu resultado
La creación devuelve 201, la consulta contiene exactamente el libro preparado y -2 devuelve 400. Al ejecutar la prueba inválida de forma aislada, el total permanece igual; repetir la suite produce los mismos resultados.

Mapa de prácticaEl navegador envía una solicitud a la API. El servidor valida la operación y consulta los datos; después devuelve una respuesta que el navegador puede mostrar. La base de datos se comunica con el servidor y no directamente con el navegador.
Ver la infografía en tamaño completo ↗Sigue con Construcción de APIs RESTful con Node.js y Express
Esta lección forma parte de un curso de Cursalo. Revisa su programa y elige entre la compra individual o el acceso a toda la escuela.
Si ya tenías acceso a este curso, entra con tu cuenta: tus derechos y tu progreso se conservan. No necesitas comprarlo de nuevo.