Dans le développement logiciel collaboratif, l'exécution manuelle de tests d'API après chaque commit de code peut rapidement devenir fastidieuse. Ne serait-il pas préférable que ces tests puissent s'exécuter automatiquement chaque fois que du nouveau code est poussé ?
La bonne nouvelle est que c'est tout à fait possible. La plupart des équipes utilisent déjà des plateformes CI/CD pour gérer les builds et les déploiements de code, et ces plateformes sont conçues pour écouter les événements de commit Git. Lorsque vous poussez du code, elles exécutent automatiquement des tâches prédéfinies telles que la compilation, l'empaquetage ou le déploiement.
L'exécution de tests d'API automatisés n'est pas différente. Apidog fournit un outil CLI qui vous permet de déclencher des tests automatisés avec une seule commande. En ajoutant cette commande à votre pipeline CI/CD, vous pouvez vous assurer que les tests s'exécutent automatiquement après chaque soumission de code.
Le processus de configuration est simple. L'essentiel est de comprendre comment fonctionne le mécanisme de déclenchement, puis de choisir la bonne approche d'intégration en fonction de la plateforme utilisée par votre équipe.
Comment fonctionnent les déclencheurs de tests automatiques ? (Les principes)
Le cœur de l'ensemble du processus est "Écoute d'événements + Exécution de commandes".
Lorsque vous poussez du code vers un dépôt Git, la plateforme CI/CD écoute cet événement Git et, selon votre configuration prédéfinie (tels que les scripts de pipeline ou les fichiers de configuration), exécute automatiquement la commande de test Apidog.
Ce principe peut être illustré comme suit :

Il existe principalement deux façons pour les plateformes CI/CD d'écouter les événements Git :
La première est le mécanisme d'événements intégré à la plateforme. Par exemple, GitHub Actions peut être directement spécifié dans le fichier de configuration : on: [push, pull_request]
. Lorsque vous poussez du code ou créez une PR, la plateforme écoute automatiquement ces événements Git et lance les tests.

La seconde est via Webhook, adaptée aux scénarios comme Jenkins où une communication inter-plateformes est nécessaire. Vous devrez configurer manuellement une URL de déclenchement.
Quelle que soit la méthode, la dernière étape est toujours la même : exécuter la commande apidog run
pour lancer le test automatisé.
Solutions d'intégration pour les plateformes populaires
Si vous utilisez des plateformes d'hébergement de code comme GitHub ou GitLab, le déclenchement des tests est particulièrement simple. Ces plateformes disposent de services CI/CD intégrés (comme GitHub Actions, GitLab CI) qui peuvent directement écouter les événements Git et exécuter des tâches. Vous pouvez vous référer à ces documentations pour démarrer rapidement :
Cependant, de nombreuses équipes ont des configurations plus complexes. Par exemple, le code est hébergé sur GitHub ou GitLab, mais le pipeline CI/CD s'exécute sur Jenkins. Dans ce cas, GitHub/GitLab et Jenkins sont deux systèmes indépendants — le premier ne peut pas déclencher directement le second.
Pour les scénarios multiplateformes, les Webhooks sont une solution simple et efficace. Un Webhook fonctionne comme un mécanisme de rappel — lorsqu'un événement spécifique (tel qu'un push Git) se produit sur GitHub, il envoie activement une requête à une URL de Webhook prédéfinie pour alerter un système externe. En offrant un point d'accès Webhook, Jenkins peut recevoir ces notifications et déclencher automatiquement les tâches de test.
Examinons une configuration spécifique : le code est hébergé sur GitHub, mais le pipeline de test s'exécute sur Jenkins.
Intégration GitHub + Jenkins pour l'exécution de tests automatisés Apidog
Si votre équipe stocke du code sur GitHub mais utilise Jenkins pour exécuter les tâches de build, voici comment vous pouvez le configurer :
Étape 1 : Configurer Jenkins et obtenir l'URL du Webhook
Tout d'abord, préparez la tâche de test dans Jenkins. Suivez la documentation Intégrer avec Jenkins pour créer un projet, configurer la commande de build et vous assurer que la commande CLI peut s'exécuter correctement.

Ensuite, obtenez l'URL du Webhook depuis Jenkins. Cette URL sert de point d'entrée pour que les systèmes externes appellent Jenkins, et GitHub l'utilisera pour déclencher les tâches de test.
Le moyen le plus simple est d'installer le plugin "Generic Webhook Trigger". Recherchez-le et installez-le dans la page de gestion des plugins de Jenkins, puis redémarrez Jenkins.

Ensuite, accédez à la page de configuration de votre projet et activez ce plugin. L'adresse du Webhook sera :
http://<adresse de votre serveur Jenkins>/generic-webhook-trigger/invoke`

Pour des raisons de sécurité, il est recommandé de définir un jeton (Token) personnalisé, l'adresse devient alors :
http://<adresse de votre serveur Jenkins>/generic-webhook-trigger/invoke?token=<xxxxxx>
Une fois que vous avez cette URL, vous pouvez configurer le Webhook dans GitHub.
Étape 2 : Configurer le Webhook GitHub
Accédez à votre "dépôt GitHub → Paramètres → Webhooks", ajoutez un nouveau Webhook, entrez l'adresse de l'étape précédente, définissez le type de contenu sur application/json
, sélectionnez le push ou d'autres événements que vous souhaitez déclencher le test, et enregistrez la configuration.

Après la configuration, chaque push de code déclenchera automatiquement Jenkins pour exécuter la tâche de test. Vous pouvez pousser du code pour le tester et vérifier les logs de build Jenkins ainsi que les résultats des tests.
Étape 3 : Vérifier l'ensemble du processus
Lorsque vous poussez du code vers GitHub, le Webhook configuré enverra une notification à Jenkins. Jenkins recevra la requête et démarrera automatiquement la tâche de build. Vous pouvez voir les logs d'exécution des tests dans la "Console" du projet Jenkins et consulter le rapport de test final.

Configuration des Webhooks pour d'autres plateformes
Outre GitHub, d'autres plateformes d'hébergement de code prennent également en charge les Webhooks, telles que :
Les méthodes de configuration sont similaires. La clé est de comprendre le mécanisme de déclenchement : un commit Git génère un événement, qui est ensuite utilisé pour notifier la plateforme CI/CD via l'écoute d'événements ou un Webhook, déclenchant finalement l'exécution automatique de la commande de test.
Pour plus de méthodes d'intégration de plateformes CI/CD, consultez la section Intégration CI/CD de la documentation officielle d'Apidog.