Les API sont intégrées à de nombreux services Web utilisés aujourd’hui, ce qui permet aux systèmes d’envoyer et de communiquer divers éléments d’information dans les deux sens. En tant que tels, ils constituent un lien puissant entre les services critiques et les utilisateurs. Et comme pour toute partie importante d’un système, il est nécessaire de les tester. En utilisant des solutions de test d’API tierces, ou Postman, nous pouvons effectuer des tests manuels et automatisés (y compris la surveillance des API).

API signifie Application Programming Interface. Il s’agit d’une interface logiciel-logiciel. Avec les API, les applications conversent les unes avec les autres sans intervention du client. Mais avec des milliers d’API disponibles, Postman entre en scène pour créer, tester, partager et gérer ces API rendant l’utilisation de l’API efficace et moins fastidieuse.

Cet article vous aidera à comprendre ce qu’est Postman, ce que sont les collections Postman, les principales fonctionnalités et avantages, et comment configurer des tests de charge pour les collections Postman et son intégration avec les pipelines CI/CD avec LoadView.

Test de charge postier avec LoadView

Explorez notre solution de test de charge ou lisez ci-dessous pour des étapes sur la façon d’utiliser Postman avec LoadView

Qu’est-ce que postier?

Postman est un outil client API populaire qui permet aux équipes de développement de créer, partager, tester et documenter plus facilement des API. Il fournit une expérience utilisateur transparente qui aide à frapper les paramètres de l’API en créant rapidement des demandes selon la spécification API et en disséquant les différents paramètres de réponse comme le code d’état, les en-têtes et le corps de réponse lui-même. Nous pouvons tirer parti de ces fonctionnalités pour des tests continus et automatisés. Il est utilisé comme outil compagnon pour développer, documenter et tester par rapport à une API et fournit une interface utilisateur pour effectuer des demandes de serveur d’API REST (Representational State Transfer) et affiche la réponse des serveurs.

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 nous fournit non seulement un environnement pour travailler avec des API, mais il peut également être utilisé pour demander des pages Web comme un navigateur. Entrez l’URL dans la barre d’adresse et appuyez sur Envoyer pour voir la réponse HTML (HyperText Markup Language). Le facteur peut également aider à appending scripts avant que l’utilisateur envoie la demande et après avoir obtenu la réponse. Nous pouvons stocker chaque demande dans une collection, qui peut plus tard être utilisée pour exécuter toutes les demandes dans l’ordre.

Cependant, une chose que Postman n’est pas est 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 API, ce n’est pas la même chose que d’exécuter un test dans des conditions réelles. Cela ne met pas l’API sous un stress réel, ce n’est donc pas un bon indicateur de la façon dont votre API réagira lorsque de vrais utilisateurs sont impliqués. Pour cela, vous avez besoin d’une solution comme LoadView, dont nous parlerons plus en détail plus loin dans cet article.

Postman Interface

Qu’est-ce que le test API ?

Dans le test API, nous utilisons des outils dédiés pour envoyer des appels au serveur hébergeant l’API et récupérer la réponse. L’objectif des tests d’API est de confirmer la bonne exécution et de valider si l’API obtient, enregistre ou met à jour les ressources comme prévu.

Si nous savons que l’API est censée effectuer une action particulière, comme mettre à jour des données, récupérer des données, supprimer des données, apporter une modification des données, les tests doivent vérifier les résultats de ces actions. Se comporte-t-il de la même façon qu’il est censé l’être? Qu’en est-il quand il n’est pas censé se produire? Et les résultats sont-ils ce que vous attendez qu’il soit? Les tests API sont généralement des tests en boîte noire, mais dans la mesure où nous avons accès aux résultats des actions de l’API à l’avance et nous connaissons la réponse attendue qui doit être validée.

Test API : Tests fonctionnels vs tests de charge

Comme nous l’avons brièvement mentionné ci-dessus, les tests fonctionnels, ou tests en boîte noire, consistent principalement à tester les fonctions de base par rapport à un ensemble de spécifications et à observer si elles fonctionnent ou non. Avant que les API puissent être déplacées à travers le cycle de développement et testées davantage, il est important que les fonctionnalités de base de l’API fonctionnent. Si les développeurs passent des tests fonctionnels aux tests de charge sans s’assurer que les fonctions de base ont été correctement testées, il jettera les tests de charge et les résultats. Les résultats des tests fonctionnels sont simplement d’observer si quelque chose a fonctionné ou non.

D’autre part, le test de charge est comme des tests fonctionnels, mais la différence est que les ensembles de test de charge pour tester comment ces fonctionnalités résister à un grand nombre d’utilisateurs simultanés, ou de charge. Les résultats des tests de charge comprennent la compréhension de la façon dont ces paramètres API réagissent et fonctionnent sous charge.

Caractéristiques de Postman

Il n’y a apparemment pas de fin à la quantité de fonctionnalités que Postman offre aux utilisateurs. Des fonctionnalités telles que l’API Postman et les contrôles de flux de travail aux moniteurs intégrés pour les tests de régression, l’outil couvre les tests d’API. Cependant, à un niveau élevé, il existe une poignée de fonctionnalités de base dont chaque testeur d’API aura besoin. Examinons de plus près ces caractéristiques.

Demandes d’importation

Postman fournit une fonction Import, où nous pouvons coller du texte CURL brut et le convertir en une demande formatée avec des détails tels que l’URL de demande, en-têtes, corps de demande, paramètres de requête et jetons d’autorisation.

Support technique et protocole multiple

La fonctionnalité client de l’API Postman nous permet d’envoyer des requêtes REST, SOAP, WSDL et GraphQL .

Rédiger des cas de test

Nous pouvons créer des cas de test qui exécutent des API ajoutées et peuvent aider à la validation de la réponse en affirmant les réponses JSON/XML et les validations de code de réponse.

Collections

Facteur nous aide à créer des collections qui contribue à séparer les API avec des dossiers Structure pour différents projets. Il fournit un soutien pour exécuter la collection, qui finira par exécuter toutes les API faisant partie de la collection.

Validation JSON Schema

Vous pouvez utiliser le schéma JSON (JavaScript Object Notation) pour définir la structure de leurs requêtes et réponses. Il aide à nettoyer et à structurer le contenu JSON, ce qui le rend facile à comprendre et à lire sur Postman.

Utiliser l’environnement et les variables dynamiques

Nous pouvons créer des variables dans Postman et en fonction d’environnements différents, les mêmes variables peuvent avoir des valeurs différentes cartographiées pour l’environnement sélectionné. Ceci est utile pendant que nous travaillons avec les mêmes API, mais plusieurs environnements dans le monde réel.

Convertir l’API en Code

Postman permet de convertir la demande d’API en code dans toutes les langues proéminentes comme JavaScript, Golang, Java, PHP, Python et bien d’autres.

Avantages du facteur

Ceux qui utilisent Postman sur une base régulière seront familiers avec les avantages ci-dessous. Cependant, il ne s’agit pas d’une liste exhaustive des capacités et des fonctionnalités de cet outil de test d’API. Examinons quelques-uns des principaux avantages de Postman.

Automatiser les tests d’API

C’est le premier et le plus évident avantage de Postman. L’outil vous permet d’automatiser les tests d’API et d’intégrer la collection aux pipelines CI/CD. Et comme nous l’avons mentionné ci-dessus, les tests d’API utilisent des formats JSON ou XML, qui sont indépendants du cadre d’application ou des protocoles utilisés par les développeurs. Quel que soit le framework que vous utilisez (Python, JavaScript, Ruby, etc.), Postman le prend en charge. Vous pouvez automatiser les tests unitaires, les tests d’intégration, les tests de régression et les tests simulés.

Plate-forme et OS Compatible

Postman est disponible pour Mac OS X, Windows et Linux. L’application Web Postman est également disponible et optimisée pour Chrome, Firefox, Edge et Safari.

Rapports d’essai postier

Il fournit un rapport de test qui nous aide à suivre les données via le générateur de demandes et vous pouvez générer des rapports HTML pour les séries de tests.

Intégrations

Postman fournit un soutien et peut être facilement intégré avec tous les principaux outils de développeur comme GitHub, Slack, Dropbox et GitLab.

Prix

Toutes les fonctionnalités majeures de Postman sont gratuites. Vous pouvez obtenir tous les avantages ci-dessus gratuitement. Il existe également des plans payés pour Postman Pro et Postman Enterprise pour les petites et grandes entreprises.

Alternatives au facteur

fanfaronner

logo fanfaronnade

 

 

Swagger est une spécification API open-source, c’est comme WSDL pour LES API REST, où vous définissez la structure des API REST (URL de points de terminaison, modèles d’entrée/sortie, schéma d’authentification, etc.). Le fichier de spécification est basé sur JSON et l’extension du fichier est soit JSON ou YAML. Voici quelques-uns des faits saillants de Swagger :

  • Open-source et gratuit, cependant, il peut être difficile d’apprendre ou de trouver des ressources pour les questions.
  • Swagger représente les API dans le navigateur.
  • Peut générer automatiquement de la documentation à partir de la création de vos services.

Interface utilisateur savon

Logo SoapUI

 

 

 

SoapUI permet aux utilisateurs de tester rapidement et facilement rest et SOAP API, comme l’outil a été créé spécifiquement pour tester les API. SoapUI aide à tester des combinaisons complexes de services Web tels que RESTful, SOAP, JSON et AMF. Toutefois, vous devez utiliser WSDL pour tester les services Web. En outre, pour ingrate automatisation, il ya beaucoup de scripts nécessaires, et pour les utilisateurs qui n’ont pas eu cette expérience, il peut devenir difficile et long. Voici quelques-uns des principaux faits saillants de SoapUI :

  • La fonctionnalité point-and-click facilite la facilité d’utilisation de JSON et XML.
  • Chargez les données d’Excel, les fichiers, les bases de données, etc.
  • Réutilisez vos cas de test fonctionnels comme tests de charge.
  • S’intègre à des plateformes tierces de gestion de l’API, prend en charge REST, SOAP, JMS et IoT, etc.

Intégrer les tests de collecte Postman dans le pipeline CI/CD

L’intégration continue (CI) est une pratique de développement qui oblige les développeurs à fusionner régulièrement le code dans un référentiel partagé. Il s’agit du processus d’automatisation de la construction et de l’essai des applications chaque fois qu’une nouvelle modification s’engage dans le code source. Le développement continu peut être expliqué comme une séquence d’étapes qui doivent être effectuées dans l’ordre pour permettre à l’application de s’exécuter sur un serveur spécialisé et de remplir son cas d’utilisation de répondre aux demandes des utilisateurs.

Collections postier d’essai de charge utilisant LoadView

Chaque fois que nous testons une application back-end, tester la fonctionnalité est une partie standard du processus pour s’assurer que les choses fonctionnent comme nous l’avions prévu pour fonctionner. Maintenant, c’est tout bien beau, mais pas pour le monde réel. Vos applications seront utilisées par de nombreux, sinon des centaines ou des milliers d’utilisateurs en même temps, nous devons également effectuer des tests de performances pour voir dans quelle mesure ils tiennent jusqu’à ce trafic. Nous devons comparer et valider l’application à chaque changement d’application. Comme nous l’avons vu l’aperçu de Postman, ses fonctionnalités et comment nous pouvons mettre en place une stratégie de test pour les tests fonctionnels API, nous aurions besoin de comprendre les outils qui peuvent aider à tester l’application.

Dans les cas où nous utilisons Postman pour tester les fonctionnalités d’API Web et que nous voulons générer un test de charge à partir des collections d’appels API que nous avons, nous pouvons opter pour un outil spécialisé de test de charge tel que LoadView. LoadView fournit de véritables tests de charge basés sur le navigateur pour les API, ainsi que des applications Web (externes et internes), ainsi que des sites Web et des serveurs.

Configuration du test

Nous examinerons étape par étape comment configurer un test de charge d’application Web pour une collection Postman.

Test d’API LoadView Postman : Étape 1

Avant même de commencer, nous aurions besoin d’exporter la collection postier. Nous pouvons choisir l’option pour obtenir le lien public et pouvons facilement l’importer à LoadView (Note : Assurez-vous que la collection postman utilise des variables locales uniquement puisque les variables de l’environnement ne sont pas stockées dans la collection).

Exportation de collection de facteur

Test d’API LoadView Postman : Étape 2

Ouvrez la plate-forme LoadView et sélectionnez Créer un nouveau test de charge.

Test d’API LoadView Postman : Étape 3

Ici, vous verrez les différents types de tests de charge qui sont disponibles dans LoadView – applications Web, sites Web et API. Pour notre cas d’utilisation, nous sélectionnerons l’option Collection Postman pour commencer les tests API.

Type d’essai de charge Facteur

Test d’API LoadView Postman : Étape 4

Une nouvelle fenêtre s’ouvrira et c’est ici que nous aurons besoin d’importer la collection postier exportée et cliquez sur Créer dispositif.

Demande de collection de facteur

Test d’API LoadView Postman : Étape 5

Une fois que nous avons créé avec succès un périphérique, nous verraient l’écran scénario de test, où nous pouvons définir load type, qui différerait en fonction de l’objectif de notre test.

  • Courbe basée sur la charge. Il s’agit d’exécuter des tests de charge avec un nombre connu d’utilisateurs et d’augmenter le trafic après le temps d’échauffement défini.
  • Courbe basée sur les objectifs. Cette configuration de test est utilisée lorsque nous recherchons les transactions souhaitées par seconde pour notre API spécifique et que nous souhaitons évoluer vers les utilisateurs simultanés souhaités.
  • Courbe dynamique basée. Cet ensemble vous permet de choisir des valeurs dynamiques en nombre d’utilisateurs, en nombre maximal d’utilisateurs et en durée de test, et peut être modifié, en temps réel, pendant le test.

Types de charge de collection de facteur

Test d’API LoadView Postman : Étape 6

Une fois que nous avons créé un scénario de test avec une liste de toutes les API, nous pouvons maintenant exécuter des tests de charge et de stress pour nos API. Une fois l’essai de charge terminé avec succès, vous de serez fourni avec des rapports, des tableaux de bord et des mesures qui montrent comment notre API et nos systèmes ont effectué sous charge.

Intégration du test de charge de collection postier avec Jenkins

Comme nous avons examiné comment nous pouvons intégrer et exécuter les tests de charge de collecte Postman en utilisant LoadView, nous pouvons ajouter ces tests dans le cadre de CI / CD pour obtenir des commentaires réguliers et des résultats de performance. LoadView fournit également une intégration avec Jenkins qui aide les sites Web de test de stress, les applications Web et les API avec des connexions simultanées dans des navigateurs réels à partir d’un cloud entièrement géré. Toutes les nouvelles mises à jour ou fonctionnalités supplémentaires peuvent également être testées avec le plugin LoadView pour Jenkins.

Jetons un coup d’oeil aux étapes utilisées pour le scénario de test de collection Postman précédemment créé dans LoadView et son intégration avec Jenkins.

Étape 1. Pour intégrer les tests avec Jenkins, nous utiliserions le même scénario de test Postman créé ci-dessus.

Étape 2. Créez un UID unique. Cela sera utilisé comme un jeton de sécurité à intégrer dans Jenkins. Copiez l’UID intégration.

Postman Jenkins Intégration UID

Étape 3. L’ID 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 actions de test > Historique).

Historique des tests de la collection postier

LoadView Plugin à Jenkins

Pour configurer le plugin LoadView, suivez les étapes suivantes :

  1. Connectez-vous à votre compte Jenkins.
  2. Dans Jenkins, allez à Credentials > Ajouter des informations d’identification > LoadView Security Token (UID). Configurez et validez les informations d’identification.
  • Genre. Jetons de sécurité LoadView (UID).
  • Portée. Sélectionnez Global.
  • ID. Laissez la valeur par défaut ou spécifiez un ID unique.
  • Description. Spécifiez une description unique pour distinguer les informations d’identification.
  • UID. Coller l’API UID web de test de charge à partir de votre compte LoadView. Une fois l’UID ajouté, cliquez sur Valider uid pour vous assurer que Jenkins peut accéder à l’API LoadView.
  1. Ensuite, sélectionnez un travail et cliquez sur Configurer.

Jetons de sécurité Jenkins LoadView

  1. Aller pour construire des > actions post-build Ajouter > post-build action > LoadView-Run scénario de test de charge. Spécifiez les paramètres de test de stress LoadView pour la build :
  • Informations d’identification. Sélectionnez la clé API à l’aide de la description.
  • ID scénario. Coller 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 pendant le test (échec de l’accès à la ressource cible, pas de mots clés/image trouvés, etc.). Si le pourcentage de sessions d’erreur est supérieur à la valeur spécifiée, la build sera marquée comme un échecdans Jenkins.
  • Temps moyen. Spécifiez une limite pour un temps de réponse moyen mesuré lors de l’exécution du test. Si la limite est atteinte, la build sera marquée comme un échecdans Jenkins.
  1. Cliquez sur Enregistrer.

Afficher les résultats des tests LoadView

Enfin, nous avons intégré avec succès notre collection Postman avec Jenkins en utilisant LoadView comme plate-forme. 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.

Sortie de la console Du facteur Jenkins

Résultats des performances des tests LoadView du facteur Jenkins

Test de surveillance de la collection postier

LoadView est une partie des nombreuses solutions de la plate-forme Dotcom-Monitor. Dotcom-Monitor fournit également des outils de surveillance faciles pour nos collections postier. Si nous avons une collection de tests d’intégration utilisés pour les tests API internes avec Postman, et que nous voulons également mettre en place des tests à exécuter à partir de l’extérieur du réseau local, nous pouvons télécharger les tests Postman sur Dotcom-Monitor. En utilisant la tâche dotcom-monitor postman collection, nous pouvons créer des tests de surveillance automatisés avec des alertes sur les erreurs. Nous pouvons spécifier des emplacements de surveillance, un calendrier de surveillance, des filtres et configurer des rapports basés sur le suivi des résultats.

La collecte des requêtes HTTP ajoutées sera exécutée à plusieurs reprises avec la fréquence définie pour effectuer la séquence d’appels vers l’API web cible. Avec cela, nous aurons les affirmations qui ont été spécifiées pour les demandes dans Postman qui aidera à vérifier les réponses API. Si une condition définie par les affirmations n’est pas remplie, la tâche sera marquée comme échouée.

Test de charge de votre API avec facteur: Pensées finales

La communauté du développement a des opinions très variées sur le test des API. Nous avons vu comment Postman nous aide tout à fait dans la création, le maintien et le test des API avec une telle facilité. Nous avons également examiné un guide étape par étape sur la façon dont nous pouvons simuler les utilisateurs simultanés testant la collection Postman à l’aide de LoadView. Enfin, nous avons examiné comment nous pouvons automatiser cette étape à l’aide de l’intégration de Jenkins avec LoadView. Les outils nécessaires pour mettre l’accent sur ces applications ont été simplifiés ces derniers temps et il fournit une aide immense pour tester les systèmes complexes qui dépendent d’applications internes et externes. Il nous aide à repérer les goulots d’étranglement et les questions plus clairement.

Commencez à tester vos API dès aujourd’hui avec LoadView. Inscrivez-vous à l’essai gratuit et recevez 20 $ en crédits de test de charge. Ou inscrivez-vous à l’une de nos démonstrations privées avec l’un de nos ingénieurs de performance. Notre ingénieur vous aidera à travers la plate-forme LoadView complète, ainsi que vous montrer comment intégrer LoadView dans les collections Postman et automatiser les étapes avec Jenkins.