¡Compártelo!

Automatización de API test con Postman

Postman se ha consolidado como una de las herramientas más populares para interactuar con servicios REST debido a su facilidad de uso y potentes funcionalidades. En este artículo, abordaremos la automatización de API test con Postman y explicaremos cómo aprovechar Postman no solo para hacer llamadas a APIs, sino también para automatizar las pruebas de estas de manera eficiente. Mediante una colección de solicitudes, es posible ejecutar pruebas automatizadas tantas veces como sea necesario, permitiendo verificar su correcto funcionamiento a través de informes detallados. En caso de errores, podrás identificar rápidamente los fallos y optimizar tus servicios con mayor agilidad.

Entorno para realizar API test con Postman

  • Reqres.in, una API simulada diseñada específicamente para realizar pruebas. Esta API ofrece varios endpoints para realizar operaciones básicas como obtener, crear, actualizar y eliminar datos de usuarios, permitiendo validar las pruebas automáticas de API sin necesidad de configurar un backend real.

Configuración de una prueba

Empezamos con la operación de creación en el API de ejemplo. Al enviar un objeto JSON con las propiedades nombre y job, deberíamos obtener un código HTTP 201 y un objeto con el identificador de usuario y la fecha de creación si todo funciona correctamente.

Desde Postman configuramos esta solicitud y podemos hacer aserciones sobre los resultados obtenidos en la pestaña Test. Aquí es posible programar distintos post-response-scripts usando Javascript y una API de pruebas específica para Postman.

Además, la pestaña ofrece enlaces de ayuda para precargar scripts que prueban ciertas funcionalidades.

En este caso, configuraremos dos pruebas. Una para validar que el estado HTTP es 201 y otra para verificar que el objeto devuelto tenga una propiedad id. Modificamos los scripts predefinidos de acuerdo a estas pruebas, cuyos resultados se muestran en la pestaña Test Results.

En caso de que alguna prueba falle, se indicará en esta misma pestaña como errónea. Por ejemplo, si añadimos una comprobación incorrecta que espera que el valor de id sea siempre 1, se refleja en el estado del test.


Si es necesario, podemos depurar las pruebas utilizando sentencias de log en JavaScript, mediante el objeto console. Los valores que imprimimos se visualizan en la consola de Postman. Por ejemplo, si queremos mostrar un mensaje de consola con el usuario creado, podemos hacerlo de la siguiente manera:

En las últimas versiones, Postman incluye un chatbot que nos permite crear pruebas de forma rápida, sin necesidad de escribir el código manualmente. Para utilizarlo, seleccionamos el icono del chatbot, lo que abre una pestaña de interacción.

Como ejemplo, pedimos al chatbot que genere una prueba para comprobar que el job del usuario creado es «futbolista». Una vez ejecutado, el chatbot creará automáticamente el código en la pestaña de scripts, permitiendo verificar que la prueba es correcta tras su ejecución.

Collection Runner

El Collection Runner es una herramienta que permite ejecutar una colección completa de solicitudes y automatizar la ejecución de pruebas en masa. Es especialmente útil cuando se parte de un conjunto de pruebas que se desea ejecutar en varios entornos o con datos variables.

Añadimos a la colección anterior una nueva request, para buscar un usuario que no existe. La prueba consiste en verificar que el resultado devuelve un código HTTP 404.

Al hacer clic derecho sobre la colección, accedemos a la pantalla principal del Collection Runner. Aquí podemos configurar aspectos como las solicitudes de la colección que queremos ejecutar, el orden, el tipo de ejecución (manual o programada), el número de iteraciones, etc.

En nuestro caso, ejecutaremos dos iteraciones de la colección indicada, obteniendo como resultado un resumen detallado, incluyendo el tiempo de cada solicitud, los datos enviados, las respuestas recibidas y un resumen del número de pruebas que pasaron o fallaron.

Aplicaciones del Collection Runner

Esta funcionalidad puede aplicarse en:

  • Pruebas de regresión: Ejecuta automáticamente todas tus pruebas cuando realices cambios en la API.
  • Pruebas de estrés: Ejecuta la misma colección varias veces para ver cómo responde el sistema a múltiples solicitudes.
  • Validación de datos: Usa datos de un archivo CSV/JSON para probar con diferentes entradas.

Variables de entorno

Para facilitar el uso de Postman en distintos entornos (como desarrollo, pruebas y producción), es muy útil definir variables de entorno para los elementos dinámicos de las solicitudes, como la URL base de la API. Estas variables permiten adaptar fácilmente las pruebas sin necesidad de modificar cada solicitud individualmente.

En este ejemplo, configuraremos una variable de entorno llamada {{base_url}}, que contendrá la URL de la API de destino. Así, al cambiar de entorno, solo necesitamos actualizar el valor de esta variable para que las solicitudes se realicen al entorno correcto, mejorando la eficiencia y flexibilidad en la gestión de las pruebas.

Para ilustrarlo, configuramos dos entornos con valores respectivos: seleccionando el entorno de «producción».

Postman utilizará: https://regress.in como {{base_url}}

Si elegimos el entorno «local», el valor será http://localhost:8080. Como en este momento no tenemos un servicio desplegado en local, la solicitud fallará en este entorno.

Conclusiónes sobre la automatización de API test con Postman

Postman se ha convertido en una herramienta esencial para desarrolladores y testers que trabajan con APIs REST, gracias a su facilidad de uso, versatilidad y capacidad para automatizar pruebas. A lo largo de este artículo, hemos visto cómo configurar pruebas básicas, trabajar con variables de entorno y ejecutar colecciones de solicitudes para realizar pruebas en masa. Con estas herramientas, es posible ahorrar tiempo y asegurar la calidad de los servicios, detectando errores y optimizando el rendimiento de las APIs en cada etapa del desarrollo.

Para que puedas experimentar y poner en práctica los conceptos explicados, hemos creado una colección de ejemplo descargable. Esta colección incluye las solicitudes de este artículo y los dos entornos empleados.

Déjanos tu comentario en nuestras redes sociales y síguenos en nuestro canal de YouTube para mantenerte al día sobre lo último en programación.

Artículos ​ relacionados