```html
L'objectif principal de l'IC/DC (Intégration Continue/Livraison Continue) dans les tests d'API est d'automatiser le processus de vérification que les API sont fonctionnelles et prêtes pour la production avant le déploiement. En utilisant l'intégration continue, les tests fonctionnels sont automatiquement exécutés chaque fois que les définitions d'API sont mises à jour, ce qui permet d'identifier les problèmes potentiels dès le début.
Apidog s'intègre de manière transparente à plusieurs plateformes d'IC/DC, notamment Jenkins, GitLab et GitHub Actions. Vous pouvez trouver des extraits de code pour l'intégration dans le module CI/CD des tests automatisés d'Apidog. L'ajout de ces extraits à votre flux de travail CI/CD vous permet d'intégrer en douceur les tests automatisés d'Apidog dans vos processus existants. Cet article se concentre sur l'intégration d'Apidog avec Jenkins et fournit des étapes détaillées sur la façon de le faire.

Étape 1 : Installer Jenkins
Pour les instructions d'installation compatibles avec différents systèmes d'exploitation, reportez-vous à la documentation officielle de Jenkins.
Une fois installé, Jenkins est accessible via son interface utilisateur visuelle à l'adresse http://{your-public-IP}:8080
.
Étape 2 : Configurer l'environnement Node.js
Installer le plugin NodeJS
- Sur la page de gestion de Jenkins, cliquez sur "Manage Jenkins" puis sur "Manage Plugins" pour accéder à la page de gestion des plugins.

- Sous l'onglet "Available plugins", recherchez et installez le plugin NodeJS, puis redémarrez Jenkins.

Configurer NodeJS et les packages npm globaux
- Après l'installation du plugin NodeJS, revenez à "Manage Jenkins" et sélectionnez "Tools" pour configurer les outils globaux.

- Dans le module NodeJS, cliquez sur "Add NodeJS", fournissez un alias comme nodejs18, choisissez une version de NodeJS supérieure à v14.20.1 et listez Apidog-cli sous "Global npm packages to install".

- Assurez-vous que l'option "Install automatically" est cochée pour que le package soit installé pendant la construction, et enregistrez vos paramètres.
Étape 3 : Créer un pipeline d'intégration continue
Il existe deux méthodes pour créer un pipeline dans Jenkins afin d'obtenir une intégration continue : Pipeline et Freestyle Project. Vous trouverez ci-dessous les détails des deux méthodes.
Option 1 : Création d'un pipeline
- Créer un projet de pipeline : Sur la page d'accueil de Jenkins, cliquez sur « New Item », entrez un nom de projet, sélectionnez « Pipeline » et cliquez sur « OK ».

- Configuration du pipeline : Sur la page de configuration du projet, recherchez l'option « Pipeline » et sélectionnez « Pipeline script » dans le menu déroulant « Definition ».

- Entrez le script de pipeline suivant d'Apidog dans la zone Script et enregistrez la configuration.
pipeline {
agent any
tools {nodejs "nodejs18"}
stages {
stage('Install Apidog CLI') {
steps {
sh 'npm install -g apidog-cli'
}
}
stage('Running Test Scenario') {
steps {
sh 'apidog run --access-token $APIDOG_ACCESS_TOKEN -t 605067 -e 1629989 -n 1 -r html,cli'
}
}
}
}
Ce script de pipeline est disponible dans le module CI/CD des tests Apidog.

Pour gagner du temps et des ressources de construction, vous pouvez rationaliser le script en excluant l'installation d'Apidog CLI, car elle est préconfigurée dans les paramètres des outils globaux.
pipeline {
agent any
tools {nodejs "nodejs18"}
stages {
stage('Running Test Scenario') {
steps {
sh 'apidog run --access-token $APIDOG_ACCESS_TOKEN -t 605067 -e 1629989 -n 1 -r html,cli'
}
}
}
}
Si vous utilisez la dernière version de la commande CI/CD qui inclut une variable dans la ligne de commande, assurez-vous de remplacer l'espace réservé APIDOG_ACCESS_TOKEN par votre jeton d'accès réel dans votre code. Vous pouvez également configurer une variable d'environnement nommée APIDOG_ACCESS_TOKEN dans Jenkins en accédant à "Dashboard -> Manage Jenkins -> System" et en entrant votre jeton d'accès comme valeur. Cette configuration permet au système d'accéder automatiquement à votre jeton lors de l'exécution du pipeline.

- Exécution de la construction : Sur la page du projet, cliquez sur « Build Now » pour démarrer le pipeline d'exécution.

Vous pouvez afficher la progression et les résultats d'une construction dans l'historique des constructions.

Option 2 : Création d'un projet Freestyle
- Créer un projet Freestyle : Sur la page d'accueil de Jenkins, cliquez sur « New Item », entrez le nom du projet, sélectionnez « Freestyle project » et cliquez sur « OK ».

- Configurer l'environnement de construction : Dans la page de configuration du projet, sous la section « Build Environment », cochez « Provide Node & npm bin/ folder to PATH » et sélectionnez la version de NodeJS que vous avez configurée précédemment (par exemple, nodejs18).

- Ajouter des étapes de construction : Après avoir défini l'environnement de construction, accédez à la section « Build Steps », cliquez sur « Add build step » et sélectionnez « Execute Shell » (ou « Execute Windows Batch Command » si vous êtes sur un serveur Windows).

Collez les commandes Apidog CLI dans le champ fourni et enregistrez vos paramètres.

- Exécuter la construction : Cliquez sur "Build Now" sur la page du projet pour démarrer le processus de construction.

Étape 4 : Envoi des résultats de la construction à des applications tierces
Les résultats des constructions CI peuvent être envoyés à des applications tierces, telles que Slack, Jenkins, Webhook et Email. Pour configurer les notifications, accédez aux paramètres du projet d'Apidog -> Notifications, où vous pouvez configurer les événements de notification souhaités.
Foire aux questions
1. Comment télécharger des fichiers pendant une construction ?
Vous pouvez télécharger les fichiers requis sur la machine exécutant la CLI (c'est-à-dire l'hôte sur lequel Jenkins est en cours d'exécution) au préalable, par exemple ce fichier image : images.jpg, en copiant le chemin d'accès vers celui-ci.

Accédez à l'étape de test dans Apidog où le point de terminaison a besoin du téléchargement de fichiers et cliquez sur le bouton « Bulk Edit ».

Entrez le chemin d'accès au fichier téléchargé dans le champ "Parameter Value", afin qu'il récupère automatiquement le fichier réel pendant la construction.

De plus, vous pouvez mettre le chemin d'accès au fichier dans la « Initial value » de la variable d'environnement.

Ensuite, dans « Bulk Edit », vous pouvez vous référer au chemin d'accès au fichier par variable, afin de pouvoir également obtenir le fichier réel par le chemin d'accès au fichier lorsque vous le construisez.

2. Comment configurer une construction planifiée dans Jenkins ?
Apidog prend actuellement en charge l'utilisation de tâches planifiées. Vous pouvez planifier des tâches pour plus d'informations.
Si vous souhaitez configurer des tâches planifiées dans Jenkins, vous pouvez le faire en configurant les « Build Triggers » du projet et en utilisant des expressions cron de type Unix pour spécifier l'heure et la fréquence de la construction.
Sur la page de configuration du projet Jenkins, recherchez le module « Build Triggers », cochez l'option « Build periodically » et, dans la zone de texte qui apparaît, entrez une expression cron pour définir l'heure et la fréquence de la construction.

Conclusion
Ce guide explique comment intégrer les tests automatisés d'Apidog avec Jenkins. Quelle que soit la méthode de construction choisie, assurez-vous que l'Apidog CLI est installé au préalable, soit par une installation automatique pendant la construction, soit par une pré-installation sur l'hôte Jenkins (en utilisant la commande npm install -g Apidog-cli
).
```