Junior
Parlez de Postman et de ses capacités en test d'API.
sobes.tech IA
Réponse de l'IA
Postman est une application de bureau et une plateforme web pour le développement et le test d'API. Il permet d'envoyer des requêtes HTTP, de visualiser les réponses, de créer des collections de requêtes, d'automatiser les tests, de documenter l'API et de collaborer sur des projets.
Les principales fonctionnalités de Postman pour tester des API :
- Créer et envoyer des requêtes : Supporte toutes les méthodes HTTP principales (GET, POST, PUT, DELETE, PATCH). Permet de configurer les paramètres de la requête, les en-têtes, le corps de la requête (formulaires, JSON, XML, etc.).
- Visualiser et analyser les réponses : Affiche le code de statut, les en-têtes et le corps de la réponse. Permet de formater et rechercher des données dans la réponse.
- Travailler avec des collections : Organise les requêtes en dossiers et catégories. Utile pour regrouper des tests liés.
- Variables et environnements : Stocke et utilise des variables (URL, tokens, etc.) dans les requêtes. Permet de basculer rapidement entre différents environnements de test (dev, staging, prod).
- Scripts Pre-request et Tests :
- Scripts Pre-request : S'exécutent avant l'envoi de la requête. Peuvent être utilisés pour préparer des données, générer des tokens, etc. Écrits en JavaScript.
- Tests : S'exécutent après réception de la réponse. Permettent de vérifier le code de statut, les en-têtes, le corps de la réponse, le temps de réponse et d'autres paramètres. Écrits en JavaScript avec le framework Chai.js.
- Automatisation des tests avec Collection Runner : Permet d'exécuter toute la collection ou des requêtes sélectionnées automatiquement. Peut configurer l'ordre d'exécution, les itérations, les délais. Les résultats sont affichés dans un rapport.
- Intégration avec des systèmes CI/CD : Possibilité d'exécuter des tests Postman depuis la ligne de commande avec Newman (CLI-runner pour Postman) et avec Jenkins, GitLab CI, GitHub Actions, etc.
- Documentation de l'API : Création automatique de documentation basée sur les requêtes de la collection. Utile pour partager avec d'autres équipes ou clients.
- Travail collaboratif : Possibilité de partager des collections, variables et environnements avec d'autres membres de l'équipe.
Exemple de script pour vérifier le statut de la réponse et la présence d'un champ dans le corps de la réponse :
// Vérification du statut de la réponse
pm.test("Le code de statut est 200", function () {
pm.response.to.have.status(200);
});
// Vérification de la présence du champ "success" dans le corps de la réponse (attendu comme booléen)
pm.test("Le corps de la réponse possède la propriété 'success'", function () {
const responseJson = pm.response.json();
pm.expect(responseJson).to.have.property('success');
pm.expect(responseJson.success).to.be.a('boolean'); // Vérification optionnelle du type
});
Exemple d'utilisation des variables d'environnement :
// Utiliser la variable {{baseUrl}} dans l'URL de la requête
// Obtenir le token dans le Pre-request Script et le stocker dans une variable d'environnement
pm.environment.set("authToken", responseData.token);
// Utiliser la variable {{authToken}} dans l'en-tête Authorization de la requête
Postman facilite grandement le test d'API, le rendant plus efficace et pratique.