Comment utiliser des variables Postman dans vos collections

Rayed Benbrahim

Publié le 27 juin 2020

L'outil indispensable lorsqu'on développe une API est Postman. Rapidement après avoir fait vos premières requêtes, vous allez devoir récupérer des données, que vous aurez saisies ou qui vous seront retournées par le serveur afin de les réutiliser dans des futures requêtes. Pour cela, les variables Postman vont considérablement vous simplifier la vie. Vous allez pouvoir stocker les ids, les tokens, les clés API dans des variables afin de pouvoir dérouler vos appels les uns après les autres sans avoir à vous interrompre pour copier/coller.

Tu envisages ou tu as fait une formation accélérée pour devenir développeur ? Sache que c'est plus difficile que ce qu'il n'y paraît.
Télécharge mon guide "Réussir sa reconversion pour devenir développeur"

Utiliser des variables Postman

Scope des variables Postman

Les variables postman sont divisées en plusieurs scopes:

  • Les variables globales
  • Les variables d'environnement
  • Les variables de collection
  • Les variables de sessions (à partir de la version 6.2)
Illustration du scope des différents types de variables postman

Le scope des différents types de variables postman

Les variables globales

Ces variables sont accessibles par tous les environnements et toutes les collections. Elles sont utilisées dans les cas où des variables vont être réutilisées dans plusieurs endroits à travers l'espace de travail sans dépendre de la collection ou de l'environnement.

Pour définir une variable globale:

Comment définir une variable globale dans postman

Comment définir une variable globale dans postman

Les variables d'environnement

Lorsqu'il s'agit de variables, il y a toujours des différences suivant l'environnement sur lequel on veut faire des requêtes. Une clé API ne sera jamais la même sur un environnement de dev, de pré-production ou de production.

C'est pourquoi Postman permet de définir des environnements différents pour une même suite de collections. Ainsi, vous pourrez mettre en variable l'URL de façon à faire des appels sur localhost:8080 lorsque vous êtes en cours de développement et, en un clic, changer d'environnement pour faire vos appels sur votre serveur de pré-production ou de production.

Pour définir une variable d'environnement:

Comment définir une environment variable dans postman

Comment définir une environment variable dans postman

Puis si on change d'environnement:

Comment modifier l'environment dans postman

Après changement d'environnement dans postman

Les variables de session

Certaines variables sont privées et même si vous êtes amené à partager votre collection, vous ne souhaitez pas forcément partager toutes vos variables d'environnement. Par exemple, votre API Key peut être privée et vous ne voulez pas forcément la partager.

Pour çà, il faut modifier la colonne Initial Value dans la liste des variables d'environnement pour mettre un exemple à la place de la vraie variable.

Comment définir une session variable dans postman

Comment définir une session variable dans postman

Définir dynamiquement des variables

Dans le développement de votre API, vous allez arriver à un stade où certaines variables seront définies dynamiquement. Par exemple, si vous voulez modifier un objet après l'avoir créé, vous devrez récupérer son ID pour le passer à la requête suivante.

Dans l'exemple ci-dessous, j'ai créé une collection où je crée un objet, je le modifie puis je le supprime:

Exemple de collection postman

Exemple de collection postman

Je vais avoir besoin de récupérer l'ID retourné par la requête POST pour le passer dynamiquement aux requêtes suivantes.

Étant donné que la variable ID est la même, quel que soit l'environnement et qu'elle pourrait être partagée, je vais la définir directement dans une variable globale à l'issue de la requête.

Pour ce faire, il faut se rendre dans l'onglet Tests, parser la réponse en JSON et définir la variable globale:

définir une variable dynamiquement postman

définir une variable dynamiquement postman

Avant de lancer cette requête, la variable object_id n'existe pas. Après l'avoir exécuté, on voit dans la liste des variables globales qu'elle est maintenant définie et prête à être utilisée dans les autres requêtes:

Utilisation de la variable

Utilisation de la variable

Je peux maintenant exécuter toute la collection en effectuant des tests automatisés à chaque requête pour m'assurer que chaque étape se comporte comme désiré.

Derniers articles

Le dernier né des bases de données AWS, MemoryDB for Redis allie la souplesse et rapidité de Redis avec une sauvegarde résiliente, chose qui aujourd'hui n'existait que pour la solution Redis Entreprise. Avec MemoryDB for Redis, AWS entend bien prendre une part du gâteau de Redis Labs.

MongoDB a mis en service la version 5.0 de sa base de données NoSQL. Dans cet article, découvrez les nouveautés qu'apporte cette release ainsi que leurs explications.

Dans l'univers du Big Data et du Cloud, Snowflake a vu le jour en étant le premier fournisseur d'un Data Warehouse sur le cloud 100% scalable. Dans cet article, découvrez ce qu'est un Data Warehouse et en quoi Snowflake est une solution innovante pour les entreprises.

Souvent portée par une équipe d'analystes, la QA vient supporter l'équipe tech pour assurer que les évolutions en cours de développement et récemment déployés ne viennent pas perturber l'application. Dans cet article, découvrez comment les méthodes Shift-Left et Shift-Right viennent se complémenter pour assurer un bon niveau de qualité du logiciel déployé.

Docker Desktop est le client permettant de faire tourner des containers depuis son poste. Découvre ce tutoriel pour installer Docker sur ton Mac et faire tourner tes premiers containers.

Docker Desktop est le client permettant de faire tourner des containers depuis son poste. Découvre ce tutoriel pour installer Docker sur ton PC Windows et faire tourner tes premiers containers.

Les Jobs