Una API (Application Programming Interface) es un conjunto de reglas, convenciones y protocolos que permiten que diferentes componentes de software se comuniquen e intercambien datos de manera estructurada sin intervención de una interfaz gráfica de usuario (GUI). Actúa como una capa de abstracción de sistemas complejos.
Analogía Mecánica: El volante y los pedales de un automóvil representan la interfaz de control. Te permiten conducir e interactuar con el vehículo de forma segura sin necesidad de comprender la mecánica interna o la inyección electrónica del motor que ocurre debajo.
GET para lectura, POST para creación,
PUT para actualización y DELETE para remoción).Para acceder de forma segura a endpoints privados, los sistemas modernos implementan tokens criptográficos estructurados. El formato más extendido en la industria es JWT (JSON Web Token). Tras un login exitoso, el servidor web despacha un token compacto cifrado que almacena los permisos de sesión del usuario. El cliente debe adjuntar este token en la cabecera de cada petición HTTP subsiguiente para validar su identidad.
Postman incorpora un entorno de ejecución basado en JavaScript (dentro de la pestaña Tests) para automatizar validaciones sobre las respuestas JSON devueltas por los servidores:
pm.test("Validar que el código de estado sea HTTP 200 OK", function () {
pm.response.to.have.status(200);
});
pm.test("Verificar la integridad y consistencia de los datos del usuario logueado", function () {
const responseJson = pm.response.json();
// Comparar variables dinámicas contra variables de entorno
pm.expect(responseJson.authentication.umail).to.equal(pm.environment.get("nuevoEmail"));
// Validar tipos de datos nativos
pm.expect(responseJson.authentication.bid).to.be.a("number");
// Validar condiciones lógicas numéricas
pm.expect(responseJson.authentication.bid).to.be.greaterThan(0);
});
Newman es la interfaz de línea de comandos (CLI) nativa para Postman. Permite ejecutar colecciones de pruebas completas de forma automatizada directamente desde la consola del sistema operativo o integradas dentro de pipelines de CI/CD (Jenkins, GitHub Actions), eliminando la necesidad de abrir la aplicación de Postman en entornos gráficos.
# Instalar Newman de forma global en el sistema npm install -g newman # Verificar el éxito de la instalación consultando su versión newman -v # Instalar el generador de reportes visuales en formato HTML npm install -g newman-reporter-html
api-testing-framework/
├─ postman/
│ └─ coleccion_pruebas_reqres.json
├─ environment/
│ └─ staging_environment.json
└─ newman/
├─ html_reports/
│ └─ report_ejecucion.html
└─ README.md
Para disparar las peticiones pasando variables de entorno y anulando URLs dinámicas en caliente, se ejecuta:
newman run ./postman/coleccion_pruebas_reqres.json \ -e ./environment/staging_environment.json \ --env-var "UrlBase=https://dummyjson.com" \ --reporters html \ --reporter-html-export ./newman/html_reports/report_ejecucion.html
============================================================ ✔ Requests ejecutadas: 19 | Exitosas: 19 | Fallidas: 0 ✔ Aserciones totales: 75 | Exitosas: 75 | Fallidas: 0 ------------------------------------------------------------ Resultado Final: ✔ Ejecución limpia y exitosa sin regresiones técnicas. ============================================================