Retour au Blog

Comment exécuter des tests Postman avec Newman dans Gitlab CI ?

Comment exécuter des tests Postman avec Newman dans Gitlab CI ?

Avant de commencer, quelques définitions :

Postman:

C’est un outil indispensable au développement web qui sert à exécuter des appels HTTP directement depuis une interface graphique. Postman permet d’automatiser et de tester les API de manière efficace. Les tests peuvent vérifier plusieurs aspects tels que: 

  • Le temps de réponse ;
  • Le code de retour ;
  • La conformité du contenu de la réponse (doit comporter des éléments spécifiques comme le nom de l’élément et sa valeur).

Newman:

Afin d’industrialiser l’exécution des tests, il faut utiliser Newman, un puissant outil en ligne de commande pour exécuter les collections Postman. Newman permet d’intégrer les test Postman dans divers système CI/CD, ce qui facilite l’automatisation des tests dans un pipeline.

Gitlab CI:

Gitlab CI est un logiciel libre de forge basé sur Git proposant les fonctionnalités de wiki :

  • Un système de suivi des bugs;
  • L’intégration continue;
  • La livraison continue.

Développé par GitLab Inc, le logiciel est utilisé par plusieurs grandes entreprises informatiques pour automatiser le développement, les tests et les déploiements. Vous pouvez aussi utiliser Github Actions, CircleCi et d’autres outils de CI/CD.

Étapes pour exécuter des tests Postman avec Newman dans Gitlab CI

1. Générer une clé API

Dans un premier temps il faut obtenir une clé API Postman, car elle est nécessaire pour obtenir l’URL de la collection et de l’environnement via l’API Postman, pour ensuite pouvoir exécuter des tests avec Newman.

  • Intégrations > l’API Postman
  • Aller sur le web > Choisir l’espace de travail > onglet 'Intégrations'
  • Onglet 'Parcourir les intégrations' > Choisissez 'Postman API' > cliquez sur '+ Obtenir la clé API'

2. Obtenir l’URL de la collection

Pour que l’URL de la collection soit testée via l’API Postman avec la clé API, il y a 2 étapes. D’abord il faut récupérer une liste de la collection et obtenir un UID (nom d’utilisateur dans un système d’exploitation) de la collection à tester dans la liste.

La deuxième étape consiste à obtenir l’URL de la collection avec l’UID de l’étape précédente.

3. Obtenir l’URL de l’environnement

Il faut procéder aux mêmes étapes que pour obtenir l’URL de la collection.

  • Récupérer une liste d’environnement et obtenir un 'UID' de l’environnement
  • Obtenir l’URL de l’environnement

4. .gitlab-ci.yml

Enfin, pour exécuter le test Postman dans Gitlab CI/CD, il faut ajouter une tâche intitulée « newman run command ».Il y a deux cas de figure : 

S’il n’est pas basé sur docker, il faut installer Newman dans before_script. 

Sinon, l’image docker ‘wojcjechzurek/newman-ci’ vous aide à ne pas avoir à l’installer.

5. Automatiser les tests Postman dans Gitlab CI

Pour automatiser l'exécution des tests, ajoutez cette configuration dans votre fichier .gitlab-ci.yml. Cela permettra de déclencher automatiquement les tests chaque fois que du code est poussé dans le dépôt ou à des moments spécifiques.

Conseils pour optimiser votre pipeline CI

  • Utiliser des environnements variables : Définissez des variables d’environnement dans Gitlab CI pour gérer les configurations sensibles telles que les clés API et les URLs.
  • Paralléliser les tests : Si vous avez de nombreux tests, divisez-les en plusieurs jobs pour réduire le temps d'exécution global.
  • Surveiller la performance : utilisez les rapports de Newman pour surveiller les temps de réponse des API et détecter les problèmes de performance.

Nous espérons que cet article vous aura aidé !

Si vous souhaitez un accompagnement pour effectuer des tests postman avec Newman dans Gitlab CI, contactez-nous: https://www.itefficience.com/contact

Contactez-nous !
Je veux en savoir plus !