Skip to content
Share
Explore
Postman es una herramienta versátil y poderosa que mejora significativamente el flujo de trabajo con APIs. Su capacidad para organizar, probar y documentar de manera eficiente lo convierte en un recurso indispensable para desarrolladores.
Enlace:

Características Clave:

Envío de Solicitudes
- GET, POST, PUT, DELETE: Soporta todos los métodos HTTP. - Headers y Parámetros: Configura fácilmente headers, parámetros de URL y cuerpos de solicitud.
2. Colecciones: - Organización: Agrupa solicitudes relacionadas en colecciones. - Colaboración: Comparte colecciones con tu equipo.
3. Automatización de Pruebas: - Scripts de Pruebas: Escribe scripts en JavaScript para automatizar pruebas y validar respuestas. - Variables de Entorno: Usa variables para manejar diferentes entornos (desarrollo, staging, producción).
4. Documentación: - Generación Automática: Crea documentación interactiva para tus APIs. - Mock Servers: Simula servidores para probar endpoints sin necesidad de un backend real.
5. Integraciones: - CI/CD: Integración con herramientas de CI/CD para pruebas continuas. - Plugins y Extensiones: Extiende la funcionalidad de Postman mediante plugins.
Beneficios de Usar Postman:
- Ahorro de Tiempo: Simplifica el proceso de pruebas y desarrollo de APIs. - Colaboración: Facilita la colaboración entre desarrolladores y equipos. - Versatilidad: Compatible con diversas tecnologías y metodologías de trabajo.

Variables en Postman

Postman permite el uso de variables para manejar de manera eficiente datos dinámicos en las solicitudes. Las variables se pueden definir en diferentes alcances: global, de entorno y de colección.

Variables Globales

- Alcance: Accesibles desde cualquier parte de Postman, independientemente de la colección o el entorno. ​- Uso: Útiles para valores que se utilizan en múltiples colecciones o entornos, como un identificador de usuario común. ​- Definición: Se configuran en la sección "Globals" en la parte inferior izquierda de la interfaz de Postman. - Ejemplo: `{{globalVariable}}`
global.png

Variables de Entorno

- Alcance: Limitadas a un entorno específico, como desarrollo, staging o producción. ​- Uso: Perfectas para valores que cambian según el entorno en el que se esté trabajando, como URLs de base, claves API, o credenciales. ​- Definición: Se configuran en la sección "Manage Environments" y se seleccionan en la esquina superior derecha. - Ejemplo: `{{envVariable}}`
local.png

Desde pre-request-script o test.

Variables de Colección

- Alcance: Restringidas a una colección específica, accesibles solo dentro de esa colección. ​- Uso: Ideales para valores que son relevantes solo dentro del contexto de una colección específica, como configuraciones o datos de prueba específicos de esa colección. ​- Definición: Se configuran dentro de la colección, en la sección "Edit Collection" bajo "Variables". - Ejemplo: `{{collectionVariable}}`
variables.png

Obtener variable

Desde body
login.png

Desde script
pm.environment.get("username")
pm.environment.get("password")
Comparación 2
Tipo de variable
Alcance
Uso principal
Definición
Global
Global
Valores comunes en todas las colecciones y entornos
Sección "Globals"
De entorno
Específico
Valores que cambian según el entorno (dev, prod)
Manage Environments
De Colección
Colección
Valores específicos de una colección
Edit Collection
There are no rows in this table

Pre-request Script

En Postman, los pre-request scripts son fragmentos de código JavaScript que se ejecutan antes de que se envíe una solicitud. Estos scripts son extremadamente útiles para preparar datos, configurar el entorno, o realizar cualquier acción que necesites antes de ejecutar la solicitud propiamente dicha.
Uso de Pre-request Scripts
Los pre-request scripts pueden usarse para varias tareas, incluyendo:
1. Configurar Variables: Definir o modificar variables globales, de entorno o de colección. ​2. Generar Datos Dinámico: Crear valores dinámicos, como marcas de tiempo, números aleatorios, o datos que se necesitan para la solicitud. ​3. Autenticación: Obtener tokens de autenticación o refrescar tokens antes de enviar la solicitud. ​4. Registro y Depuración: Registrar información para depuración o auditoría.

Ejemplo.
En muchos casos, las solicitudes a una API requieren estar autenticado, y a menudo, esto se hace manualmente. Sin embargo, se puede automatizar este proceso usando pre-request scripts en Postman. Estos scripts pueden verificar el estado del token y realizar el login automáticamente si es necesario, mejorando la eficiencia y la consistencia en las pruebas.
const valid = isTokenValid();
console.log('Is token valid?:', valid);

if (!valid) {
// If the token is not valid, login to refresh it
console.log('Token has expired. Logging in to refresh token...');
login();
} else {
console.log('Token is still valid.');
}


Test scripts

Son fragmentos de código JavaScript que se ejecutan después de que una solicitud ha sido enviada y se ha recibido una respuesta. Estos scripts permiten validar la respuesta, verificar la funcionalidad de la API y automatizar pruebas.
Propósito de los Test Scripts
Los test scripts en Postman se utilizan para: ​1. Validar Respuestas: Comprobar si las respuestas de la API cumplen con las expectativas. ​2. Automatizar Pruebas: Crear pruebas automatizadas para diferentes casos de uso. ​3. Registrar Datos: Guardar datos de la respuesta para usarlos en solicitudes posteriores. ​4. Depuración: Proveer información adicional para depurar problemas.
Ejemplo:
languages.png
Este script asegura que la API está devolviendo un estado correcto, la estructura esperada y que los idiomas devueltos están dentro de los idiomas soportados.
let response = pm.response.json();
const insideResponse = response.data;

pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});

pm.test("Response data is an object", () => {
pm.expect(insideResponse).to.be.an("object");
});

pm.test("Check available languages", () => {
const availableLanguages = ['es', 'en', 'pt', 'fr', 'it', 'eu', 'ca', 'fi', 'de', 'pl', 'ro', 'uk'];

pm.expect(insideResponse).to.not.be.null;
pm.expect(insideResponse).to.not.be.undefined;

Object.keys(insideResponse).forEach(key => {
pm.expect(availableLanguages).to.include(key);
});
});

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.