Tester l'API avec Bruno
Pour tester les points d'entrée de l'API, le projet utilise Bruno, une alternative open source à Postman qui stocke les requêtes localement sous forme de fichiers texte.
Pourquoi avoir quitté Postman ?
Après plusieurs années d'utilisation, la politique de fonctionnement de Postman est devenue incompatible avec un usage confortable :
- Compte obligatoire pour accéder aux features de base (variables d'environnement, organisation des requêtes).
- Connexion internet permanente : chaque clic déclenche une requête vers les serveurs de Postman. Une simple coupure réseau suffit à bloquer tout travail, même en local.
- Données hébergées à l'étranger : les collections sont stockées sur des serveurs tiers, ce qui pose des questions de confidentialité.
Les alternatives évaluées
| Outil | Raison d'exclusion |
|---|---|
| Insomnia | Détecté comme virus par Windows Defender lors des tests — faux positif probable, mais suffisant pour disqualifier |
| Hoppscotch | Dépend de Google Firebase — même problématique de connexion internet que Postman |
| Thunder Client | Extension VS Code — incompatible avec un workflow sur deux écrans (IDE + outil API) |
| Bruno ✅ | Open source, 100% local, fichiers texte versionnables — correspond exactement au besoin |
Pourquoi Bruno ?
- Pas de compte requis — toutes les fonctionnalités sont disponibles hors-ligne, sans inscription.
- Fichiers locaux — chaque requête est un fichier texte stocké dans le projet.
- Git-friendly — la collection est versionnée avec le reste du code source, partagée automatiquement avec tous les développeurs du projet.
- Open source — transparent, auditable, sans dépendance à un service tiers.
Installation et configuration
1. Installer Bruno
Télécharge Bruno sur usebruno.com.
2. Ouvrir la collection
Dans l'application, clique sur "Open Collection" et sélectionne le dossier ApiCollection/ situé à la racine du projet backend.
3. Configurer l'environnement
Sélectionne l'environnement Local en haut à droite. Vérifie que la variable ADB_baseURL correspond à ton serveur local (généralement http://localhost:8000).
4. Authentification
Lance la requête de login, récupère le token JWT dans la réponse, puis mets à jour la variable ADB_token dans l'environnement.
Règle de contribution
Toute nouvelle route doit être accompagnée de sa requête Bruno dans
ApiCollection/avant le push. La collection doit rester synchronisée avec le code à tout moment.