Postman API Testing
Postman es una herramienta muy utilizada para pruebas manuales y automatizadas de APIs, que ofrece collections, environments, tests e integración con CI/CD.
Descripción general
Si trabajas con APIs, probablemente terminarás usando Postman. Existen otras opciones disponibles, pero Postman destaca por su facilidad de uso y es la herramienta que se enseña mayoritariamente en programas de formación.
Sea cual sea la calidad de tu documentación de API, con Postman puedes verificar endpoints sin escribir una sola línea de código.
Postman es una aplicación para construir, probar y documentar APIs. Con ella puedes crear solicitudes HTTP, gestionar parámetros y headers, inspeccionar respuestas y escribir scripts de prueba. Las collections te permiten agrupar y organizar múltiples requests. Los environments almacenan variables como URLs, tokens o IDs, facilitando el cambio entre entornos de desarrollo, test y producción. La funcionalidad de tests te deja definir assertions en JavaScript que verifiquen códigos de estado, tiempos de respuesta, headers o cuerpos JSON. Newman es la interfaz de línea de comandos de Postman y permite ejecutar collections en pipelines de CI/CD. Postman también soporta mock servers, monitores y colaboración en equipo. Para desarrollo profesional de APIs, Postman es una herramienta imprescindible para probar APIs de manera confiable durante el desarrollo y en producción.
Componentes principales
Collections
Una collection es un grupo de requests en Postman. Puedes estructurar solicitudes por endpoints, features o casos de prueba. Las collections se pueden exportar, importar, versionar y compartir. Forman la base para pruebas documentadas y repetibles.
Requests
Un request en Postman consiste en método HTTP, URL, headers, body y parámetros. Postman soporta todos los métodos comunes y formatos como JSON, Form-Data, x-www-form-urlencoded y Binary. Para cada solicitud puedes ver la respuesta en la misma ventana.
Environments
Los environments contienen variables que cambian según el contexto de ejecución. Típicamente incluyen baseUrl, apiKey, authToken o userId. Con environments puedes ejecutar la misma collection contra desarrollo, staging y producción sin necesidad de duplicar requests.
Variables
Postman ofrece múltiples niveles de variables: Global, Collection, Environment, Data y Local. Las variables se referencian con dobles llaves, por ejemplo {{baseUrl}}. Permiten crear tests flexibles y reutilizables.
Pre-Request Scripts
Los Pre-Request Scripts se ejecutan antes de enviar una solicitud. Con ellos puedes establecer variables, generar tokens, crear timestamps u organizar datos dinámicamente. Son útiles para pasos preparatorios que no forman parte del test en sí.
Tests
Los tests de Postman son snippets de JavaScript que se ejecutan después de cada request. Verifican aspectos como si el código de estado es 200, si un campo existe en la respuesta o si el tiempo de respuesta está dentro de un límite. Los tests se escriben en la pestaña Tests de cada request.
Chaining
El chaining consiste en extraer valores de una respuesta y utilizarlos en solicitudes posteriores. Por ejemplo, almacenas un ID que obtienes de una respuesta POST en una variable y lo usas en un siguiente GET request. Esto permite probar workflows realistas.
Newman
Newman es la versión de línea de comandos de Postman. Ejecuta collections y genera reportes. Es ideal para pipelines de CI/CD porque automatiza tests y puede generar resultados en formatos como HTML, JSON o JUnit.
Monitores
Los monitores de Postman ejecutan collections a intervalos regulares y supervisan así la disponibilidad y corrección de una API. Son apropiados para monitoreo básico de APIs y pueden enviar alertas ante fallos.
Mock-Server
Postman puede generar un mock server a partir de una collection que entrega respuestas predefinidas. Es útil para desarrollar clientes cuando la API real aún no está lista, o para proporcionar datos de prueba.
Colaboración en equipo
Postman ofrece workspaces donde los equipos pueden colaborar. Las collections, environments y APIs se pueden compartir, versionar y comentar. Los roles y permisos controlan el acceso.
Ejemplo práctico
Un equipo prueba la API de usuarios de una aplicación. La collection contiene requests para crear, obtener y actualizar un usuario.
Paso 1: Crear un usuario:
POST {{baseUrl}}/users
Content-Type: application/json
{
"name": "Max Mustermann",
"email": "max@example.com"
}
Test en la respuesta:
pm.test("Status code is 201", function () {
pm.response.to.have.status(201);
});
pm.test("Response contains user id", function () {
var jsonData = pm.response.json();
pm.expect(jsonData).to.have.property("id");
pm.environment.set("userId", jsonData.id);
});
Paso 2: Obtener el usuario:
GET {{baseUrl}}/users/{{userId}}
Test:
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
pm.test("Email matches", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.email).to.eql("max@example.com");
});
Paso 3: Ejecutar en la pipeline con Newman:
newman run user-api.collection.json -e staging.environment.json -r cli,html
De esta manera se crea una cadena de pruebas integral que puede ejecutarse tanto manualmente como de forma automatizada.
FAQ: Postman API Testing
1. ¿Qué es Postman?
2. ¿Qué es una Postman Collection?
3. ¿Qué son los Environments en Postman?
4. ¿Qué son los Postman Tests?
5. ¿Qué es Chaining en Postman?
6. ¿Qué es Newman?
7. ¿Cómo se integra Postman en CI/CD?
8. ¿Qué es un Postman Monitor?
9. ¿Qué es un Mock-Server en Postman?
10. ¿Qué son los Pre-Request Scripts?
11. ¿Cómo se guardan valores secretos en Postman?
12. ¿Qué es la Postman Console?
13. ¿Se puede usar Postman para GraphQL?
14. ¿Qué son los Workspaces en Postman?
15. ¿Cuáles son las buenas prácticas para Postman Testing?
Continúa en la ruta de aprendizaje de APIs
El siguiente artículo en la ruta de aprendizaje de APIs cubre API Testing: Unit, Integration y Contract Tests, la pirámide de testing para APIs desde tests unitarios aislados hasta Contract Tests.
Referencias
- https://learning.postman.com/
- https://github.com/postmanlabs/newman
- https://www.postman.com/api-platform/api-testing/
Libros recomendados sobre API Testing
Si deseas profundizar en Postman, API Testing y automatización de tests, te recomendamos los siguientes libros:
Keine Bücher für Kategorie "api-development" gefunden.



