Cómo probar una Api REST con Postman

Postman es una interesante herramienta para desarrollar y probar Apis. Algunas de sus funcionalidades son:

  • Una interfaz intuitiva para enviar request, guardar respuestas, agregar test y crear flujos de trabajo.
  • Historial de los request
  • Creación de Variables
  • Creación de Entornos (Environments)
  • Creación de Collections y descripción de request.

Vamos a la práctica!

Podemos probar un get de la siguiente forma:

Screen Shot 2017-08-30 at 14.14.34.png

Pero también podemos configurar entornos y variables. Siguiendo el ejemplo, podemos configurar la variable de entorno url y la variable global api_key, y las usamos de la siguiente forma:

Screen Shot 2017-08-30 at 14.17.47.png

Que ventajas tiene esta forma de trabajar? En primer lugar podemos tener distintas url para los entornos de testing con los que estemos trabajando. En segundo lugar podemos usar nuestro get con distintas api_key válidas e inválidas, y de esta forma ejecutar distintos casos de prueba.

También podrías crear variables globales para los parámetros que comúnmente se usan en un get.

Screen Shot 2017-08-30 at 14.31.59.png

Las variables de entorno y globales las puedes crear desde aquí:

Screen Shot 2017-08-30 at 14.25.16.png

Para hacer un POST con Postman, hay varios detalles a tener en cuenta, vamos por partes:

  • url : la url puede variar según el entorno en el que estemos probando (desarrollo, testing, producción, algún otro).
  • Authorization y Headers: la mayoría de las apis tienen algún sistema de validación  para garantizar que el usuario que hace el POST sea alguien autorizado (o válido). Algunos ejemplos son:

Screen Shot 2017-08-30 at 14.36.03.png

Screen Shot 2017-08-30 at 17.23.45.png

Las variables globales también son muy útiles acá ya que nos evitamos la carga manual de datos y muchas veces, como me ha pasado a mí, el token obtenido en un método es luego utilizado en otro método, utilizando variables globales te evitas el copy&paste de ese valor, y créeme que puedes ahorrar mucho tiempo!

Body: En el cuerpo de un POST podemos trabajar con valores estáticos o también podemos hacer uso de las variables, las variables tienen la ventaja de que un mismo post nos puede servir para probar con muchos valores distintos.

Screen Shot 2017-08-30 at 14.44.06.png

Ahora veamos dos secciones que nos van a servir mucho para hacer pruebas. Estas secciones son: Pre-request script y Test

  • Pre-request script: acá podemos poner todo lo que queremos que se ejecuta antes de la llamada al método (GET, POST, PUT, DELETE). Por ejemplo, en una llamada POST podríamos querer configurar los valores que van en el body de la llamada. En la imagen previa el cuerpo de la llamada se arma con variables que se configuraron en esta sección.
  • Tests: cómo su nombre lo indica en esta sección podemos validar el código devuelto por el método, o el tipo de respuesta (si es json o no), o algún mensaje esperado. Para esto Postman nos provee alguna ayuda en la sección SNIPPETS. Con solo seleccionar un snippets el código correspondiente se insertará en el Tests, luego podemos editar, agregar condiciones, bucles, lo que sea!

Screen Shot 2017-08-30 at 17.28.30.png

Y por si esto fuera poco, Postman además nos permite trabajar con archivos externos para insertar datos de prueba. Por lo que podríamos trabajar con un archivo con todos los valores combinados de las pruebas que tenemos que hacer!

Se que es mucha información! pero vale la pena jugar con esta poderosa herramienta.

Les dejo un video con un ejemplo práctico que armé, espero les sirva!

 

Para un próximo post vamos a ver cómo podemos integrar Postman con herramientas de Integración Continua.

 

 

 

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Blog de WordPress.com.

Subir ↑

A %d blogueros les gusta esto: