Skip to main content

Bruno - Test des API Rest

Bruno est un outil open-source destiné à tester des requêtes API, similaire à des outils comme Postman ou Insomnia, mais conçu pour offrir une expérience utilisateur plus légère et axée sur les développeurs. Voici comment il fonctionne :

Fonctionnalités principales de Bruno : Interface Utilisateur (UI) simplifiée :

Bruno propose une interface simple et intuitive pour écrire et envoyer des requêtes API. Il prend en charge divers types de requêtes HTTP comme GET, POST, PUT, DELETE, etc. Gestion des collections de requêtes :

Comme Postman, Bruno permet de regrouper plusieurs requêtes API dans des collections, facilitant ainsi leur organisation et leur exécution par lot. Cela est utile pour structurer les appels à différentes API d'un même projet. Support des environnements :

Vous pouvez définir des environnements (par exemple, développement, production) avec des variables spécifiques à chaque environnement. Cela vous permet de facilement basculer entre différents environnements lors des tests API sans modifier manuellement les URL ou autres paramètres. Historique des requêtes :

Bruno garde un historique des requêtes que vous avez envoyées, permettant de revoir et de réutiliser facilement des requêtes précédentes sans avoir à les retaper. Variables et tests :

L'outil permet d'injecter des variables dans les requêtes (par exemple, des tokens d'authentification ou des paramètres dynamiques), et il est également possible d'ajouter des tests automatisés pour valider les réponses des API (vérification du code de statut HTTP, du format des données, etc.). Fichier de configuration .yaml :

Bruno utilise un fichier de configuration au format YAML pour gérer les collections de requêtes, ce qui permet aux développeurs de versionner facilement leurs tests API dans des systèmes de contrôle de version comme Git. Cela permet aussi d'éditer manuellement les collections de requêtes si besoin.

Les requêtes de Bruno d'Open ENT sont stockés dans le répertoire /openapi

Organisation des répertoires

Les requêtes sont structurées par module, offrant une organisation claire et modulable. Pour chaque module, un répertoire dédié aux environnements est disponible, permettant de gérer facilement les différentes variables utilisées dans les requêtes. Cela facilite le changement de serveur ou d'autres paramètres spécifiques à l'environnement, en fonction des besoins.

Le répertoire data contient des fichiers, tels que des fichiers CSV, utilisés pour certaines requêtes nécessitant le transfert ou la manipulation de données via des fichiers.

├── Open ENT v3 Administration
│ └── environments
├── Open ENT v3 Directory
│ ├── data
│ │ └── structure
│ └── environments
├── Open ENT v3 Keycloak
│ └── environments
└── Open ENT v3 Portal
└── environments

Requête avec authentification

La plupart des requêtes demandent une authentification avec un token JWT. Pour simplifier le renouvellement du token, les requêtes sont paramétrés afin de réutiliser automatique la variable :

Bruno avec Access Token

Lorsque vous appelez une requête demandant une authentification, il faut donc exécuter d'abord la requête "Get access token" et ensuite appeler votre requête. Le token sera disponible dans Bruno

Bruno avec Access Token

Tip

Les variables initialisées apparaissent en vert dans Bruno, tandis que celles qui n'existent pas sont affichées en rouge.

Bruno avec Access Token