Tutoriel sur les tests de charge Postman
De nombreux services Web d’aujourd’hui intègrent des API (interfaces de programmation d’applications), permettant l’échange d’informations diverses entre les systèmes. Les API servent de connexion solide entre les services essentiels et les utilisateurs. Comme pour tester tout composant crucial du système, il est impératif d’évaluer les API. L’utilisation d’outils de test d’API tiers tels que Postman facilite les tests manuels et automatisés, englobant des capacités de surveillance des API.
Postman est un outil largement acclamé dans le domaine des outils de test pour valider les requêtes d’API. Bien que son adoption pour les tests d’API généraux soit répandue, l’utilisation de Postman pour les tests de charge n’est pas aussi simple.
Dans ce tutoriel sur les tests de charge Postman, nous verrons ce qu’est Postman, les tests de charge Postman et comment effectuer des tests de charge à l’aide de Postman afin que vous puissiez commencer à tester la charge avec Postman.
Qu’est-ce que le facteur ?
Postman est une plate-forme et un outil de collaboration populaire utilisé par les développeurs pour tester, concevoir et gérer des interfaces de programmation d’applications (API). Il fournit une interface conviviale qui permet aux développeurs de créer, d’envoyer et de tester des requêtes HTTP, y compris celles des API RESTful. Postman prend en charge diverses méthodes HTTP, mécanismes d’authentification et permet aux utilisateurs d’organiser et d’automatiser leurs flux de travail de test d’API.
Postman est un outil de développement d’API utilisé dans le cycle de vie du développement logiciel :
- Développement d’API
- Test API
- Documentation API
Postman offre plus qu’un simple environnement de développement d’API ; Il peut également fonctionner comme un navigateur pour demander des pages Web. De plus, Postman permet aux utilisateurs d’inclure des scripts avant d’envoyer une demande et après avoir reçu la réponse. Chaque requête peut être enregistrée dans une collection, ce qui facilite l’exécution de toutes les requêtes dans un ordre spécifié en cas de besoin.
Postman sert d’outil pour tester l’API, vérifier la bonne exécution et valider si l’API récupère, enregistre ou met à jour correctement les ressources comme prévu. Les tests d’API font partie des tests fonctionnels pour s’assurer que les fonctionnalités de base de l’API fonctionnent.
Postman n’est cependant pas un outil de test de performance. Bien que vous puissiez exécuter de petits tests contrôlés qui vous donnent des temps de réponse de l’API, c’est différent de l’exécution d’un test dans des conditions réelles. Postman ne vous permet pas de soumettre l’API à une contrainte réelle, ce n’est donc pas un bon indicateur de la façon dont votre API réagira lorsqu’elle sera soumise à de vrais utilisateurs dans un scénario réel. Les tests de performance de Postman sont la clé du succès des API et pour pouvoir charger et tester vos API pour des scénarios réels, vous avez besoin d’une solution de test de charge pour vous aider. Des outils tels que LoadView peuvent combler cette lacune en fournissant à vos équipes une myriade de fonctionnalités de test de charge pour vous assurer que vous obtenez des mesures complètes pour vos efforts de test.
Caractéristiques de Postman
Postman offre aux utilisateurs un large éventail 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 ainsi des capacités complètes de test de l’API. Malgré la multitude de fonctionnalités, il existe quelques fonctionnalités de base essentielles pour tout testeur d’API. Plongeons plus profondément dans ces fonctionnalités clés.
- Demandes d’importation – Postman inclut une fonctionnalité d’importation qui permet aux utilisateurs de coller du texte CURL brut, le transformant en une requête formatée avec des détails tels que l’URL de la demande, les en-têtes, le corps de la demande, les paramètres de requête et les jetons d’autorisation.
- Protocoles et support multiples – La fonctionnalité de 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 faciliter la validation des réponses, y compris les assertions pour les réponses JSON/XML et la vérification des codes de réponse.
- Collections– Postman aide à la création de collections, ce qui permet d’organiser les API au sein d’une structure de dossiers pour des projets distincts. Il offre la possibilité d’exécuter une collection, qui exécute ensuite toutes les API incluses 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 permet d’organiser et de structurer le contenu JSON, d’améliorer sa clarté et sa lisibilité dans Postman.
- Utiliser l’environnement et les variables dynamiques – Dans Postman, vous pouvez créer des variables, et ces variables peuvent se voir attribuer des valeurs différentes. Cela s’avère utile lorsque vous travaillez avec des API identiques dans plusieurs environnements réels.
- Convertir l’API en code – Postman permet à la requête API d’être convertie en code dans tous les langages importants tels que JavaScript, Golang, Java, PHP, Python et bien d’autres.
Avantages des tests de charge Postman
- Évaluation de la performance : Les tests de charge permettent d’évaluer les performances de vos API à différents niveaux d’activité simultanée des utilisateurs. Il vous permet de comprendre comment votre système gère des charges accrues et s’il répond aux attentes en matière de performances.
- Test d’évolutivité : Les capacités de test de charge de Postman vous permettent de tester l’évolutivité de votre API, ce qui vous aide à déterminer dans quelle mesure elle peut gérer des quantités croissantes de trafic et de données.
- Identifier les goulots d’étranglement : Les tests de charge permettent d’identifier les goulots d’étranglement ou les faiblesses potentielles de votre infrastructure d’API. Ces informations sont cruciales pour optimiser et affiner votre système afin de s’assurer qu’il peut gérer efficacement des charges accrues.
- Tests de résistance : Postman vous permet de simuler des conditions stressantes en générant de lourdes charges sur votre API. Cela vous aide à comprendre les points de rupture et les limites de votre système, ce qui vous permet d’apporter les améliorations nécessaires.
- Test d’accès concurrentiel : Les tests de charge dans Postman vous permettent de tester les performances de votre API lorsque plusieurs utilisateurs effectuent des requêtes simultanément. Ceci est important pour les applications qui sont censées gérer des interactions utilisateur simultanées.
- Rentabilité : En identifiant et en résolvant les problèmes de performance dès le début du cycle de développement, les tests de charge avec Postman peuvent contribuer à réduire les coûts en évitant les temps d’arrêt potentiels ou les correctifs coûteux en production.
- Amélioration de l’expérience utilisateur : En veillant à ce que votre API puisse supporter des charges élevées et fonctionner correctement sous contrainte, vous pouvez offrir une expérience plus fluide et plus fiable à vos utilisateurs.
Limites des tests de charge avec Postman
Bien que Postman soit excellent pour les tests et le développement d’API, il a des limites en ce qui concerne les tests de charge. L’un des principaux inconvénients est son incapacité à simuler efficacement des niveaux élevés d’utilisateurs simultanés ou des scénarios complexes. Postman se concentre principalement sur les tests fonctionnels et la validation plutôt que sur les performances dans des conditions de stress. De plus, son interface graphique et ses capacités de script peuvent ne pas être adaptées aux charges massives ou à l’analyse complexe des mesures de performance par rapport aux outils de test de charge dédiés comme LoadView. Pour des besoins complets en matière de tests de charge, il est recommandé d’utiliser des outils spécialisés conçus spécifiquement pour les tests de charge plutôt que de se fier uniquement à Postman.
Test de charge avec Postman à l’aide de LoadView
Lors du test d’une application back-end, le test de la fonctionnalité fait partie intégrante du processus pour s’assurer que les choses fonctionnent comme prévu. Vos applications seront utilisées par de nombreux, voire des centaines ou des milliers d’utilisateurs en même temps, nous devons donc également effectuer des tests de performance pour voir dans quelle mesure elles résistent à ce trafic. Nous devons comparer et valider l’application à chaque changement d’application.
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 d’API, vous pouvez choisir d’utiliser un outil de test de charge tel que LoadView. LoadView fournit des tests de charge réels basés sur un navigateur pour les API, ainsi que pour les applications Web (externes et internes), les sites Web et les serveurs.
Configuration du test de charge Postman
Nous examinerons étape par étape comment configurer un test de charge d’application Web pour une collection Postman.
Étape 1
Avant de commencer, vous devez exporter la collection Postman. Vous pouvez choisir l’option Obtenir un lien public et l’importer facilement dans LoadView.
- Note: 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 plate-forme 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’utilisation, vous allez sélectionner l’option Postman Collection pour démarrer les tests d’API.
Étape 4
Une nouvelle fenêtre s’ouvrira, et c’est là que vous devrez importer la collection Postman exportée et cliquer sur Créer un appareil.
Étape 5
Une fois que nous avons créé un appareil avec succès, vous verrez l’écran Scénario de test , où vous pouvez définir le type de charge. Cela diffère en fonction de l’objectif de votre test.
- Courbe basée sur la charge. Cela permet d’exécuter vos tests de charge avec un nombre connu d’utilisateurs et d’augmenter le trafic après le temps de préchauffage défini.
- Courbe basée sur les objectifs. Cette configuration de test est utilisée lorsque l’on vise à atteindre le nombre souhaité de transactions par seconde pour notre API spécifique et lors de la mise à l’échelle vers les utilisateurs simultanés ciblés.
- Courbe basée sur la dynamique. Cette configuration vous permet de sélectionner des valeurs dynamiques pour le nombre d’utilisateurs, le nombre maximal 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 une liste de toutes vos API, vous pouvez maintenant exécuter vos tests de charge et de contrainte pour vos API.
Une fois le test de charge exécuté, vous recevrez des rapports, des tableaux de bord et des mesures complets qui montrent comment votre API et vos systèmes se sont comportés sous différentes charges.
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 collection Postman avec LoadView, nous pouvons intégrer ces tests dans notre pipeline CI/CD pour recevoir des commentaires cohérents et des résultats de performance.
LoadView offre une intégration transparente avec Jenkins, ce qui facilite les tests de résistance des sites Web, des applications Web et des API à l’aide de connexions simultanées dans de vrais navigateurs à partir d’un environnement cloud entièrement géré. Le plug-in LoadView pour Jenkins permet de tester la charge de toute nouvelle mise à jour ou fonctionnalité supplémentaire.
Examinons les étapes employées pour le scénario de test de collecte Postman précédemment créé dans LoadView et la façon dont il s’intègre à Jenkins.
Étape 1
Pour intégrer vos tests à Jenkins, vous devez utiliser le même scénario de test Postman que celui de la section précédente.
Étape 2
Créez un UID unique et copiez-le. Cela sera utilisé comme un jeton de sécurité à intégrer dans Jenkins.
Étape 3
L’ID du scénario de test pour notre collection Postman se trouve sur la page de configuration du scénario ou sur la page Historique des tests (Gestionnaire > de tests, le menu > des actions de test Historique).
LoadView Plugin à Jenkins
Pour configurer le plugin LoadView, suivez les étapes suivantes :
- Connectez-vous à votre compte Jenkins.
- Dans Jenkins, accédez à Informations d’identification > Ajouter des informations d’identification > LoadView Security Token (UID)). Configurez et validez les informations d’identification.
- Gentil- Jeton de sécurité LoadView (UID).
- Portée- Sélectionnez Global.
- ID- Conservez la valeur par défaut ou spécifiez un ID unique.
- Description- Spécifiez une description unique pour distinguer les informations d’identification.
- UID- Collez l’UID de l’API web de test de charge à partir 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.
- Ensuite, sélectionnez une tâche et cliquez sur Configurer.
4. Accédez à Actions post-build Ajout > > d’un scénario de test de charge LoadView-Run d’action > post-build. Spécifiez les paramètres de test de contrainte LoadView pour la build :
- Pouvoirs- Sélectionnez la clé API à l’aide de la description.
- ID du scénario – Collez l’ID de scénario de test que vous souhaitez utiliser dans la build. Copiez l’ID à partir de la page de scénario dans LoadView.
- Seuil d’erreur – Spécifiez un pourcentage acceptable de sessions avec des erreurs qui se sont produites lors du test (impossible d’accéder à la ressource cible, aucun mot-clé/image trouvé, etc.). Si le pourcentage de sessions d’erreur est supérieur à la valeur spécifiée, la build est marquée comme un échec dans Jenkins.
- Temps moyen – Spécifiez une limite pour un temps de réponse moyen mesuré pendant l’exécution du test. Si la limite est atteinte, la build sera marquée comme un échec dans Jenkins.
5. Cliquez sur Enregistrer.
Afficher les résultats des tests LoadView
Enfin, nous avons intégré avec succès notre collection Postman à Jenkins à l’aide de LoadView. Pendant que notre test de résistance est en cours d’exécution, l’état est affiché dans la sortie de la console Jenkins en mode temps réel.
Conclusions : Tester la charge de votre API avec Postman
Dans ce guide, nous avons expliqué comment vous pouvez simuler des utilisateurs simultanés avec votre collection Postman à l’aide de LoadView et comment vous pouvez automatiser cette étape à l’aide de l’intégration Jenkins avec LoadView. Récemment, les outils nécessaires à l’évaluation de ces applications ont été rationalisés, offrant une aide significative pour tester des systèmes complexes dépendant d’applications internes et externes. Cette simplification permet d’identifier plus clairement les goulots d’étranglement et les problèmes.
Chez LoadView, notre objectif est d’être votre partenaire pour tous vos efforts de test de charge, en vous soutenant à chaque étape du développement et en abordant tous les niveaux de complexité. Les tests de charge n’ont pas besoin d’être compliqués et la plate-forme de LoadView facilite le processus de test de charge de vos API. Vous pouvez intégrer de manière transparente votre collection Postman à LoadView pour effectuer vos tests de charge.
L’équipe d’experts de LoadView est disponible pour vous aider, vous et votre équipe, à développer et à améliorer 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 offre de véritables tests de navigateur, des scripts pointer-cliquer et des rapports complets et lisibles qui éliminent les conjectures des tests de charge et permettent une collaboration efficace entre les fonctions de développement.
Commencez à tester la charge de vos API dès aujourd’hui avec LoadView. Inscrivez-vous à l’essai gratuit et recevez des tests de charge gratuits. Ou inscrivez-vous à l’une de nos démonstrations privées avec l’un de nos ingénieurs de performance. Notre ingénieur vous guidera à travers l’ensemble de la plate-forme LoadView et nous vous montrerons comment intégrer LoadView dans les collections Postman et automatiser les étapes avec Jenkins.
Découvrez des fonctionnalités inégalées avec une évolutivité illimitée. Pas de carte de crédit, pas de contrat.