đŸ“Č Postman et Newman : Automatisation et IntĂ©gration des Tests API

🚀 Qu’est-ce que Postman ?

Postman est une plateforme de dĂ©veloppement API qui simplifie l’interaction avec les API en offrant une interface graphique pour crĂ©er, tester, et documenter les requĂȘtes. GrĂące Ă  ses fonctionnalitĂ©s avancĂ©es, les utilisateurs peuvent organiser les requĂȘtes API en collections, ajouter des assertions pour vĂ©rifier les rĂ©ponses, et sauvegarder des configurations pour un partage facile.


📋 FonctionnalitĂ©s ClĂ©s de Postman

  • CrĂ©ation et ExĂ©cution de RequĂȘtes API : Supporte les mĂ©thodes GET, POST, PUT, DELETE, etc.
  • Collections et Environnements : Organise les requĂȘtes en collections et configure les variables d’environnement.
  • Tests AutomatisĂ©s : Ajoute des scripts de test avec JavaScript pour vĂ©rifier les rĂ©ponses des API.
  • Documentation : GĂ©nĂšre automatiquement des documentations dĂ©taillĂ©es pour les collections API.
  • Surveillance API : ExĂ©cute pĂ©riodiquement des tests pour s’assurer que l’API fonctionne correctement.
  • Partage d’Équipe : Collaborez en temps rĂ©el avec des espaces de travail partagĂ©s.

📄 Exemple de Cas d’Utilisation avec Postman

Voici un exemple d’utilisation pour crĂ©er une requĂȘte API, l’ajouter Ă  une collection, et Ă©crire un test simple.

Étape 1 : CrĂ©er une RequĂȘte

  1. Ouvrez Postman et crĂ©ez une nouvelle requĂȘte avec l’URL de l’API (par exemple,
    https://jsonplaceholder.typicode.com/posts

    ).

  2. Choisissez la méthode HTTP (par exemple, GET ou POST).
  3. Cliquez sur Send pour envoyer la requĂȘte et afficher la rĂ©ponse.

Étape 2 : CrĂ©er un Test

  1. Allez dans l’onglet Tests de la requĂȘte.
  2. Ajoutez le code JavaScript suivant pour vérifier que la réponse a un code statut 200 :
javascript
pm.<span class="hljs-title function_">test</span>(<span class="hljs-string">"Statut de la réponse est 200"</span>, <span class="hljs-keyword">function</span> () {
pm.<span class="hljs-property">response</span>.<span class="hljs-property">to</span>.<span class="hljs-property">have</span>.<span class="hljs-title function_">status</span>(<span class="hljs-number">200</span>);
});
  1. Cliquez sur Save pour sauvegarder la requĂȘte et le test.

Étape 3 : Organiser en Collection

  1. Ajoutez la requĂȘte dans une collection pour regrouper les tests API.
  2. Ajoutez plusieurs requĂȘtes API Ă  cette collection pour les tester de maniĂšre sĂ©quentielle.

đŸ’» Qu’est-ce que Newman ?

Newman est l’outil CLI de Postman qui permet d’exĂ©cuter des collections de tests API directement en ligne de commande. Il est particuliĂšrement utile pour automatiser les tests API dans des environnements CI/CD, comme Jenkins, GitHub Actions, ou GitLab CI/CD.


đŸ› ïž Utilisation de Newman pour Automatiser les Tests API

Installation de Newman

Newman peut ĂȘtre installĂ© via npm (Node Package Manager). Assurez-vous d’avoir Node.js installĂ© sur votre machine.

npm install -g newman

Exécution de Tests avec Newman

Une fois Newman installé, vous pouvez exécuter une collection de tests API Postman en utilisant une simple commande.

  1. Exporter la Collection : Dans Postman, exportez votre collection en format JSON.
  2. Exécuter la Collection : Utilisez la commande suivante pour exécuter la collection :
newman run path/to/your-collection.json

Exemples d’Options avec Newman

Newman offre plusieurs options pour personnaliser l’exĂ©cution des tests :

  • Environnement : SpĂ©cifiez un fichier d’environnement pour gĂ©rer les variables de test.
newman run path/to/your-collection.json -e path/to/your-environment.json
  • Rapport HTML : GĂ©nĂšre un rapport en HTML pour une meilleure visualisation des rĂ©sultats.
newman run path/to/your-collection.json -r html --reporter-html-export path/to/report.html
  • Nombre de Tentatives : Re-tente les tests Ă©chouĂ©s.
newman run path/to/your-collection.json --iteration-count 3

🔄 IntĂ©gration de Newman dans CI/CD

L’intĂ©gration de Newman dans un pipeline CI/CD permet de vĂ©rifier automatiquement les API Ă  chaque commit ou avant chaque dĂ©ploiement. Voici quelques exemples de configuration pour intĂ©grer Newman dans des pipelines populaires.

Exemple de Pipeline Jenkins

groovy
pipeline {
agent any
stages {
stage('Install Newman') {
steps {
sh 'npm install -g newman'
}
}
stage('Run Postman Tests') {
steps {
sh 'newman run path/to/your-collection.json -e path/to/your-environment.json -r cli,html'
}
}
}
post {
always {
archiveArtifacts artifacts: 'newman/*.html', allowEmptyArchive: true
}
}
}

Exemple de Configuration CI/CD GitHub Actions

yaml
<span class="hljs-attr">name:</span> <span class="hljs-string">Run</span> <span class="hljs-string">Postman</span> <span class="hljs-string">Tests</span>

on: [push, pull_request]

jobs:
test:
runs-on: ubuntu-latest
steps:
name: Checkout code
uses: actions/checkout@v2

name: Install Newman
run: npm install -g newman

name: Run Postman Tests
run: newman run path/to/your-collection.json -e path/to/your-environment.json


🎯 Avantages de Postman et Newman

  • Tests AutomatisĂ©s : L’intĂ©gration de Newman dans CI/CD garantit que les APIs sont testĂ©es Ă  chaque build.
  • Collaboration d’Équipe : Postman facilite le partage des collections avec les Ă©quipes.
  • Rapports et DĂ©bogage Faciles : GĂ©nĂšre des rapports dĂ©taillĂ©s pour visualiser les rĂ©sultats et diagnostiquer les Ă©checs.
  • FlexibilitĂ© : AdaptĂ© aux tests manuels et automatisĂ©s, permettant une approche de test API complĂšte.

📊 Rapports et Visualisation avec Newman

Newman peut gĂ©nĂ©rer des rapports sous diffĂ©rents formats, tels que HTML, JSON, JUnit, et CLI. Les rapports peuvent ĂȘtre archivĂ©s ou partagĂ©s avec les Ă©quipes pour suivre l’Ă©tat des tests et faciliter le dĂ©bogage.


🔗 Ressources et Documentation

Pour aller plus loin avec Postman et Newman, voici des ressources utiles :


#Postman #Newman #APITesting #DevSecOps #CICD #APISecurity #AutomationTesting


Cet article présente Postman et Newman, deux outils essentiels pour tester et automatiser les API dans des pipelines CI/CD. Grùce à leur intégration facile et leur puissance de test, Postman et Newman permettent aux équipes de garantir la fiabilité et la sécurité des APIs à chaque étape du développement.

Please follow and like us:
Pin Share

Laisser un commentaire