Tutoriel de Test de Charge Postman
Beaucoup de services web actuels intègrent des API (interfaces de programmation d’applications), permettant l’échange de diverses informations entre systèmes. Les API servent de connexion robuste entre services essentiels et utilisateurs. Comme pour tout composant crucial du système, l’évaluation des API est impérative. L’utilisation d’outils tiers de test d’API tels que Postman facilite les tests manuels et automatisés, incluant des capacités de surveillance d’API.
Postman est un outil largement reconnu dans le domaine des outils de test pour valider les requêtes API. Bien que son adoption pour les tests API généraux soit répandue, utiliser Postman pour les tests de charge n’est pas aussi simple.
Dans ce tutoriel sur les tests de charge avec Postman, nous couvrirons ce qu’est Postman, les tests de charge avec Postman et comment effectuer des tests de charge avec Postman afin que vous puissiez commencer à tester la charge avec Postman.
Qu’est-ce que Postman ?
Postman est un outil largement utilisé qui aide les développeurs à tester, concevoir et gérer les API dans un environnement collaboratif et facile à utiliser. Avec Postman, les développeurs peuvent facilement créer, envoyer et tester des requêtes HTTP, en particulier pour les API RESTful. Il prend en charge plusieurs méthodes HTTP, types d’authentification, et permet d’organiser et d’automatiser les workflows de tests d’API, ce qui en fait un outil essentiel dans le processus de développement d’API. Aujourd’hui, Postman est également largement utilisé dans les écosystèmes modernes d’API qui incluent des microservices, des applications conteneurisées et des architectures natif-cloud, rendant la validation des API partie intégrante du workflow de développement.
Postman est un outil de développement d’API utilisé dans le cycle de vie du développement logiciel :
- Développement d’API
- Tests d’API
- Documentation d’API
Mais Postman n’est pas seulement destiné au développement. Il peut aussi fonctionner comme un navigateur pour envoyer des requêtes et recevoir des réponses. De plus, vous pouvez ajouter des scripts à exécuter avant d’envoyer les requêtes et après réception des réponses, ce qui vous donne plus de contrôle sur vos interactions API. Les requêtes peuvent être sauvegardées dans des collections pour vous permettre de les exécuter dans un ordre spécifique quand nécessaire, rendant votre flux de travail plus organisé.
En matière de tests d’API, Postman est un excellent outil pour s’assurer que tout fonctionne comme prévu. Il aide à vérifier que votre API récupère, enregistre et met à jour correctement les données, ce qui en fait un élément clé des tests fonctionnels. Toutefois, il est important de se rappeler que Postman n’est pas conçu pour les tests de performance. Bien qu’il puisse exécuter de petits tests pour vérifier les temps de réponse, il ne simule pas le trafic réel ni des charges lourdes. Donc, si vous devez voir comment votre API résiste sous pression, vous aurez besoin d’un outil dédié aux tests de charge.
Pour des tests de performance plus approfondis, vous aurez besoin d’un outil spécialisé comme LoadView. Des outils comme LoadView peuvent simuler des conditions réelles qui vous aident à effectuer des tests de stress sur vos API et à recueillir des métriques complètes afin de garantir qu’elles peuvent gérer un trafic intense et une utilisation importante. Ceci est crucial pour assurer que votre API peut bien fonctionner dans toutes les circonstances, pas seulement en environnements de tests contrôlés.
Fonctionnalités de Postman
Postman offre aux utilisateurs un éventail étendu de fonctionnalités, allant de l’API Postman et des contrôles de flux de travail aux moniteurs intégrés pour les tests de régression, garantissant des capacités complètes de test d’API. Malgré cette multitude de fonctionnalités, quelques fonctions de base sont essentielles pour chaque testeur d’API. Explorons plus en détail ces fonctionnalités clés.
- Importer des requêtes – Postman inclut une fonction d’importation qui permet aux utilisateurs de coller un texte brut CURL, le transformant en une requête formatée avec des détails tels que l’URL de la requête, les en-têtes, le corps de la requête, les paramètres de requête et les jetons d’autorisation.
- Multiples protocoles et support – La fonction client API de Postman vous permet d’envoyer des requêtes REST, SOAP, WSDL et GraphQL.
- Écrire des cas de test – Vous pouvez écrire des cas de test pour exécuter des API et aider à la validation des réponses, incluant des assertions pour les réponses JSON/XML et la vérification des codes de réponse.
- Collections – Postman aide à la création de collections, permettant l’organisation des API dans une structure de dossiers pour différents projets. Il offre la capacité d’exécuter une collection, qui lance alors toutes les API contenues dans cette collection spécifique.
- Validation du schéma JSON – Le schéma JSON (JavaScript Object Notation) peut être utilisé pour définir la structure des requêtes et des réponses. Cela aide à organiser et structurer le contenu JSON, améliorant sa clarté et sa lisibilité dans Postman.
- Utiliser les variables d’environnement et dynamiques – Dans Postman, vous pouvez créer des variables, auxquelles peuvent être assignées différentes valeurs. Ceci est utile lorsque vous travaillez avec les mêmes API sur plusieurs environnements réels.
- Convertir l’API en code – Postman permet de convertir la requête API en code dans les principaux langages comme JavaScript, Golang, Java, PHP, Python et bien d’autres.
Avantages du Test de Charge avec Postman
- Évaluation des performances : Les tests de charge aident à évaluer la performance de vos API sous différents niveaux d’activité utilisateur simultanée. Cela vous permet de comprendre comment votre système gère des charges accrues et s’il répond aux attentes en termes de performance.
- Tests de montée en charge : Les capacités de tests de charge de Postman vous permettent de tester la scalabilité de votre API, vous aidant à déterminer à quel point elle peut gérer une augmentation du trafic et des données.
- Identification des goulets d’étranglement : Les tests de charge aident à identifier les éventuels goulots d’étranglement ou faiblesses dans votre infrastructure API. Ces informations sont cruciales pour optimiser et peaufiner votre système afin d’assurer qu’il peut gérer efficacement des charges accrues.
- Tests de stress : Postman vous permet de simuler des conditions stressantes en générant des charges lourdes sur votre API. Cela vous aide à comprendre les points de rupture et les limites de votre système, vous permettant d’apporter les améliorations nécessaires.
- Tests de concurrence : Les tests de charge dans Postman vous permettent de vérifier comment votre API performe lorsque plusieurs utilisateurs effectuent des requêtes simultanément. Ceci est important pour les applications qui doivent gérer des interactions utilisateur concurrentes.
- Rentabilité : En identifiant et en traitant les problèmes de performance tôt dans le cycle de développement, les tests de charge avec Postman peuvent contribuer à des économies en évitant des temps d’arrêt potentiels ou des corrections coûteuses en production.
- Amélioration de l’expérience utilisateur : En garantissant que votre API peut gérer des charges élevées et fonctionner correctement sous stress, vous pouvez offrir une expérience plus fluide et fiable à vos utilisateurs.
Limitations des Tests de Charge avec Postman
Bien que Postman soit excellent pour les tests et le développement d’API, il présente des limitations pour les tests de charge. Un inconvénient majeur est son incapacité à simuler efficacement un grand nombre d’utilisateurs simultanés ou des scénarios complexes. Le focus principal de Postman est sur les tests fonctionnels et la validation plutôt que sur la performance sous conditions de stress. De plus, son interface graphique et ses capacités de script peuvent ne pas bien évoluer pour gérer des charges massives ou des analyses complexes de métriques de performance comparativement à des outils spécialisés dédiés aux tests de charge comme LoadView. Pour des besoins complets de test de charge, il est recommandé d’utiliser des outils spécialement conçus à cet effet plutôt que de se fier uniquement à Postman.
Tests de Charge avec l’Outil REST/RESTFUL de Postman
Lors du test d’une application back-end, tester la fonctionnalité est une étape standard pour s’assurer que tout fonctionne comme prévu. Vos applications seront utilisées par de nombreux, voire des centaines ou milliers d’utilisateurs simultanément, il est donc également nécessaire d’effectuer des tests de performance afin de voir comment elles résistent à ce trafic. Nous devons mesurer les performances et valider l’application à chaque modification.
Dans le cas où vous utilisez Postman pour tester la fonctionnalité de votre API web et que vous devez générer des tests de charge à partir des collections d’appels API, vous pouvez opter pour un outil de test de charge comme LoadView. LoadView offre des tests de charge basés sur de vrais navigateurs pour les API, ainsi que pour les applications web (externes et internes) et les sites web et serveurs.
Configuration du Test de Charge dans Postman
Nous allons examiner étape par étape comment configurer un test de charge pour une application web à partir d’une collection Postman.
Étape 1
Avant de commencer, vous devez exporter la collection Postman. Vous pouvez choisir l’option Obtenir le lien public et l’importer facilement dans LoadView.
- Remarque : Assurez-vous que la collection Postman utilise uniquement des variables locales car les variables d’environnement ne sont pas stockées dans la collection.
Étape 2
Ouvrez la plateforme LoadView et sélectionnez Créer un nouveau test de charge.
Étape 3
Vous verrez ici les différents types de tests de charge disponibles dans LoadView.
Applications web, sites web, et API. Pour notre cas d’usage, vous sélectionnerez l’option Collection Postman pour démarrer les tests API.
Étape 4
Une nouvelle fenêtre s’ouvrira, et c’est ici que vous devrez importer la collection Postman exportée et cliquer sur Créer un dispositif.
Étape 5
Une fois le dispositif créé avec succès, vous verrez l’écran Scénario de test, où vous pouvez définir le Type de charge. Cela varie selon l’objectif de votre test.
- Courbe basée sur la charge. Cela exécute vos tests de charge avec un nombre connu d’utilisateurs et augmente le trafic après un temps de chauffe défini.
- Courbe basée sur un objectif. Cette configuration de test est utilisée lorsque l’on vise à atteindre un nombre désiré de transactions par seconde pour notre API spécifique et à monter en charge jusqu’au nombre d’utilisateurs simultanés ciblé.
- Courbe basée sur des valeurs dynamiques. Cette configuration vous permet de sélectionner des valeurs dynamiques pour le nombre d’utilisateurs, le nombre maximum d’utilisateurs et la durée du test. Ces paramètres peuvent être ajustés en temps réel pendant le test.
Étape 6
Une fois que vous avez créé un scénario de test avec la liste de toutes vos API, vous pouvez maintenant exécuter vos tests de charge et de stress pour vos API.
Après l’exécution du test de charge, vous recevrez des rapports complets, des tableaux de bord et des métriques montrant comment votre API et vos systèmes ont performé sous différentes charges. De nombreuses équipes corrèlent également ces résultats de test de charge avec des plateformes d’observabilité pour surveiller les métriques d’infrastructure, la performance des bases de données et les dépendances de service durant des pics de trafic API important.
Intégration du test de charge de la collection Postman avec Jenkins
Après avoir exploré l’intégration et l’exécution des tests de charge de collections Postman avec LoadView, nous pouvons intégrer ces tests dans notre pipeline CI/CD pour recevoir des retours et résultats de performance constants.
LoadView offre une intégration fluide avec Jenkins, facilitant les tests de stress de sites web, applications web et API via des connexions concurrentes dans de vrais navigateurs à partir d’un environnement cloud entièrement géré. Le plugin LoadView pour Jenkins permet les tests de charge pour toutes les nouvelles mises à jour ou fonctionnalités additionnelles.
Examinons les étapes utilisées pour le scénario de test de la collection Postman précédemment créé dans LoadView et comment il s’intègre à Jenkins.
Étape 1
Pour intégrer vos tests avec Jenkins, vous utiliserez le même scénario de test Postman de la section précédente.
Étape 2
Créez un UID unique et copiez l’UID d’intégration. Celui-ci sera utilisé comme jeton de sécurité pour l’intégration dans Jenkins.
Étape 3
L’ID du scénario de test pour notre collection Postman peut être trouvé sur la page de configuration du scénario ou sur la page Historique des tests (Test Manager > le menu des actions de test > Historique).
Plugin LoadView dans Jenkins
Pour configurer le plugin LoadView, suivez ces étapes :
- Connectez-vous à votre compte Jenkins.
- Dans Jenkins, allez à Identifiants > Ajouter des identifiants > Jeton de sécurité LoadView (UID). Configurez et validez les identifiants.
- Type – Jeton de sécurité LoadView (UID).
- Périmètre – Sélectionnez Global.
- ID – Laissez par défaut ou spécifiez un ID unique.
- Description – Indiquez une description unique pour distinguer les identifiants.
- UID – Collez l’UID API de test de charge web de votre compte LoadView. Une fois l’UID ajouté, cliquez sur Valider l’UID pour vous assurer que Jenkins peut accéder à l’API LoadView.
- Sélectionnez ensuite un job et cliquez sur Configurer.
4. Allez dans Construire > Actions post-construction > Ajouter une action post-construction > LoadView-Exécuter un scénario de test de charge. Spécifiez les paramètres du test de stress LoadView pour la construction :
- Identifiants – Sélectionnez la clé API à l’aide de la description.
- ID Scénario – Collez l’ID du scénario de test que vous souhaitez utiliser dans la construction. Copiez l’ID depuis la page du scénario dans LoadView.
- Seuil d’erreur – Indiquez un pourcentage acceptable de sessions avec erreurs durant le test (échec d’accès à la ressource cible, absence de mots clés/image, etc.). Si le pourcentage de sessions en erreur dépasse la valeur spécifiée, la construction sera marquée comme échouée dans Jenkins.
- Temps moyen – Spécifiez une limite pour un temps de réponse moyen mesuré durant l’exécution du test. Si cette limite est dépassée, la construction sera marquée comme échouée dans Jenkins.
5. Cliquez sur Enregistrer.
Voir les résultats du test LoadView
Enfin, nous avons intégré avec succès notre collection Postman à Jenkins en utilisant LoadView. Pendant que notre test de stress s’exécute, le statut s’affiche en temps réel dans la Sortie console Jenkins.
Conclusions : Tester la charge de votre API avec Postman
Dans ce guide, nous avons vu comment simuler des utilisateurs concurrents avec votre collection Postman en utilisant LoadView et comment automatiser cette étape avec l’intégration Jenkins et LoadView. Récemment, les outils nécessaires à l’évaluation de ces applications ont été simplifiés, offrant une aide significative pour tester des systèmes complexes reposant sur des applications internes et externes. Cette simplification facilite l’identification claire des goulets d’étranglement et problèmes.
Chez LoadView, notre objectif est d’être votre partenaire pour tous vos efforts de test de charge, vous soutenant à chaque étape du développement et traitant tout niveau de complexité. Les tests de charge ne doivent pas être compliqués et la plateforme LoadView rend ce processus simple pour vos API. Vous pouvez intégrer aisément votre collection Postman avec LoadView pour réaliser vos tests de charge.
L’équipe d’experts de LoadView est disponible pour vous accompagner, vous et votre équipe, dans le développement et l’amélioration de votre stratégie de test de charge, et vous constaterez que notre plateforme est intuitive et facile à utiliser, même pour les utilisateurs non techniques. LoadView propose des tests dans de vrais navigateurs, une création de scripts par pointage et clic, ainsi que des rapports complets et lisibles qui éliminent les incertitudes du test de charge et favorisent une collaboration efficace entre développeurs.
Commencez dès aujourd’hui vos tests de charge API avec LoadView. Inscrivez-vous pour un essai gratuit et bénéficiez de tests de charge gratuits. Ou inscrivez-vous à l’un de nos démonstrations privées avec l’un de nos ingénieurs performance. Notre ingénieur vous guidera à travers toute la plateforme LoadView et vous montrera comment intégrer LoadView dans les collections Postman et automatiser les étapes avec Jenkins.
Passez votre test de charge au niveau supérieur
Utilisateur Concurrent Niveau Supérieur
Découvrez des fonctionnalités inégalées avec une évolutivité illimitée. Pas de carte de crédit, pas de contrat.