how use command line integration with newman postman
Apprenez à exécuter des collections Postman à l'aide de Newman:
Dans ce tutoriel, nous verrons comment nous pouvons intégrer ou exécuter des collections Postman via la ligne de commande en utilisant Newman, un outil d'intégration de ligne de commande pour Postman.
Newman est un outil gratuit et open source. Il fournit des capacités puissantes pour exécuter les collections Postman, en tirant parti des capacités super utiles de Postman telles que les tests, les assertions, les scripts de pré-requête, etc. et en exécutant la collection via la ligne de commande.
=> Cliquez ici pour voir de A à Z des didacticiels de formation Postman ici.
Ce que vous apprendrez:
Qu'est-ce que Newman?
Newman est un exécuteur de ligne de commande pour les collections Postman. En d'autres termes, il permet à un utilisateur d'exécuter une collection Postman existante via la ligne de commande.
Il attend ou consomme la version JSON de la collection qui peut être obtenue en exportant simplement la collection au format de collection JSON ou l'URL de la collection qui n'est rien d'autre que le même JSON obtenu par l'exportation de la collection.
Voici un didacticiel vidéo:
Installer Newman
Newman est un module NodeJS et dépend donc du système sur lequel le nœud est installé. Pour vérifier si le nœud est installé ou non, vérifiez simplement la version du nœud sur le système à l'aide de la commande ci-dessous.
$ node -v v10.15.3
Si la commande renvoie une sortie comme ci-dessus, cela signifie que le nœud est installé et que nous sommes prêts à utiliser l'installation de Newman. Sinon, vous pouvez installer le nœud en vous référant aux instructions d'installation ici
Une fois l'installation du nœud réussie, vous pouvez simplement installer Newman comme n'importe quel autre package de nœuds à l'aide de la commande ci-dessous.
npm install -g newman
Ici, «-g» désigne l’installation globale, ce qui signifie que le package Newman sera accessible à partir de n’importe quel dossier / emplacement du système de fichiers. Pour effectuer une installation locale, vous pouvez supprimer l’indicateur ‘-g’ ci-dessus, où le package Newman ne sera accessible qu’à partir de l’emplacement ou du dossier d’installation.
Pour valider l'installation réussie de Newman, vous pouvez simplement vérifier sa version en utilisant la commande ci-dessous.
newman -v 4.5.1
Exécution de collections à l'aide de Newman
Pour exécuter des collections à l'aide de Newman, vous devez avoir l'un des 2.
- La collection au format JSON.
- URL de la collection hébergée.
La commande utilisée pour exécuter la collection Postman à l'aide de Newman est:
meilleur logiciel de mise à jour de pilote windows 10
newman run {{collectionJsonPath}} OR newman run {{collectionUrl}}
Essayons d'exécuter une collection d'échantillons à l'aide de Postman.
- Accédez à l'application Postman, utilisez n'importe quelle collection Postman existante et exportez-la vers un formulaire JSON. (Nous allons créer une nouvelle collection avec 3 demandes, c'est-à-dire enregistrer un utilisateur, se connecter et obtenir un utilisateur à l'aide du formulaire de points de terminaison API ici ).
- Exportez maintenant la collection au format JSON.
- Une fois la collection JSON obtenue, ouvrez une invite de commande et exécutez la collection à l'aide de la commande d'exécution Newman (supposons que la collection a été exportée avec le nom - Postman_Newman_IntegrationCollection .json) et que l'utilisateur a parcouru le répertoire d'exportation de la collection, la collection peut être exécutée simplement en utilisant la commande ci-dessous.
newman run Postman_Newman_IntegrationCollection.json
Une fois la commande ci-dessus exécutée, la sortie suivante est produite.
Intégration Newman avec les variables d'environnement
Voyons maintenant les utilisations plus avancées de Newman. Pour une collection qui ne repose sur aucune variable d'environnement, la collection peut être simplement exécutée à l'aide de la commande d'exécution Newman. Mais pour les collections, en utilisant les variables d'environnement, nous devons également fournir la variable d'environnement JSON avec la collection JSON.
Exemple: Nous utiliserons la même collection et utiliserons une variable d'environnement pour le point de terminaison GET User, c'est-à-dire pour la demande avec point final .
Nous utiliserons userId de la collection de variables d'environnement. La requête résultante deviendra donc https://reqres.in/api/users/{{userId}}
Maintenant, une fois le fichier d'environnement créé, exportez-le au format JSON, en suivant les étapes ci-dessous.
- Créez un environnement, avec une variable nommée userId et la valeur doit être définie sur «4».
- Maintenant, cliquez sur le bouton Paramètres pour ouvrir la fenêtre «Gérer les environnements».
- Cliquez sur l'icône 'Télécharger' par rapport à l'environnement créé pour télécharger l'environnement en tant que fichier JSON (enregistrez le fichier sous le nom 'testEnv.json).
Exportons à nouveau la collection avec la demande modifiée et essayez d'exécuter la même collection avec le fichier d'environnement avec la commande ci-dessous:
newman run Postman_Newman_IntegrationCollection.json -e testEnv.json
Une fois la commande ci-dessus exécutée, la sortie reste la même que celle de la collecte directe, le seul changement étant la demande «GET User» récupère désormais la valeur du fichier JSON d'environnement.
Résultats d'assertion à l'aide de Newman
Comme les requêtes Postman peuvent également contenir des assertions, nous allons maintenant découvrir comment les résultats des assertions sont affichés lorsque les collections Postman sont exécutées via un Newman.
Le coureur de collection Newman est en parité complète avec le coureur de collection Postman et l'exécuteur de requêtes. Pour les demandes ayant des assertions, les assertions sont évaluées au fur et à mesure que l'exécution de la demande se termine et le résumé de l'exécution de l'assertion est affiché dans le résumé du test à la fin de l'exécution du test.
Pour la collection ci-dessus, nous avons ajouté une assertion au niveau de la collection pour vérifier que le code d'état de la réponse est 200, c'est-à-dire que pour chaque requête faisant partie de la collection, cette assertion doit être associée.
Donc, si cette collection avait 3 requêtes, cela signifie qu'il devrait y avoir un total de 3 assertions qui auraient dû être exécutées.
Veuillez vous référer à la capture d'écran ci-dessous pour les résultats d'exécution et les résultats d'assertion en surbrillance.
Génération de rapports à l'aide de Newman
Jusqu'à présent, nous savons que Newman peut exécuter des collections Postman via la ligne de commande et générer des journaux de test et un résumé de l'exécution des tests. Mais qu'en est-il des rapports formatés qui pourraient être partagés ou publiés sur un serveur?
Eh bien, Newman a également un soutien pour cela. Il existe des modules de nœuds personnalisés disponibles pour générer des rapports d'exécution de test Newman. Nous allons parcourir un exemple en utilisant un newman-html-reporter .
Ce rapporteur est à nouveau un module de nœud et doit être installé séparément à l'aide de la commande ci-dessous.
npm install -g newman-reporter-html
Une fois le module ci-dessus installé, il peut être utilisé avec la commande Newman run.
newman run Postman_Newman_IntegrationCollection.json -e testEnv.json -r html
L’indicateur ‘-r’ indique le rapporteur à utiliser avec l’exécution de la collection Newman.
Avec cette option, il utilise le module ou les packages Newman-reporter-html et crée un rapport HTML pour l'exécution du test.
Reportez-vous à l'une de ces captures d'écran du rapport HTML ci-dessous:
Intégration avec les outils CI
Avec Newman ayant les capacités de s'exécuter en ligne de commande, il réduit beaucoup de dépendance à tout pré-requis sous la forme d'une console ou d'une application, c'est-à-dire que la seule dépendance que Newman a est un nœud (qui est généralement disponible en exécution environnement dans toutes les machines CI comme les esclaves Jenkins ou les nœuds Travis).
Cela permet aux collections Postman d'être exécutées dans le cadre des pipelines de génération eux-mêmes via la ligne de commande Newman.
Newman ayant également la capacité de pousser les résultats au format Html, c'est vraiment utile et pratique et pendant l'exécution du pipeline lui-même, les résultats HTML peuvent être poussés vers un serveur ou peuvent être envoyés par e-mail aux utilisateurs souhaités, etc. les capacités sont infinies car les dépendances sont minimes.
Pour un exemple d'exécution détaillé de bout en bout de l'intégration avec Jenkins, veuillez vous référer à cet exemple du blog officiel de Postman ici .
Plus d'options avec Newman
Tout ce que nous avons couvert est un sous-ensemble des fonctionnalités fournies par Newman. Pour obtenir des détails complets sur les commandes et les commutateurs pris en charge par Newman, ouvrez simplement l'aide de la ligne de commande pour Newman à l'aide de la commande ci-dessous.
newman run -h
Voici la sortie de la commande ci-dessus, avec des détails sur tous les commutateurs et leur signification.
Il existe également d'autres ressources d'informations pour la référence de l'API Newman. Se il vous plaît se référer ici pour la documentation officielle.
Conclusion
Dans ce didacticiel, nous avons parcouru l'intégration en ligne de commande de Postman appelée Newman, qui permet d'exécuter des collections Postman via une interface de ligne de commande.
Il s’agit simplement d’un package de nœuds et toute ligne de commande sur laquelle est installé un nœud avec Newman devrait être en mesure d’exécuter la collection Postman et de générer de beaux rapports sur l’exécution de la collection.
L'intégration de la ligne de commande est également d'une grande aide pour l'intégration des tests de collection basés sur Postman avec des outils CI tels que Jenkins, Travis, etc., car l'exécution de la ligne de commande n'a aucune dépendance sur le système d'exploitation ou l'application et il suffit simplement d'un environnement de nœud pour exécuter le collection.
=> Visitez ici pour la série exclusive de didacticiels de formation Postman.
lecture recommandée
- Commande Cut sous Unix avec des exemples
- Syntaxe des commandes Unix Cat, options avec exemples
- Commande Ls sous Unix avec des exemples
- Comment et quand utiliser les scripts de pré-demande et de post-demande Postman?
- Commande Grep sous Unix avec des exemples simples
- Arguments de ligne de commande en C ++
- Commande de tri Unix avec syntaxe, options et exemples
- Arguments de ligne de commande dans un script shell Unix avec exemple