{"meta":{"title":"Test des webhooks","intro":"Découvrez comment tester vos webhooks et votre code qui gère les livraisons de webhook.","product":"Webhooks","breadcrumbs":[{"href":"/fr/enterprise-cloud@latest/webhooks","title":"Webhooks"},{"href":"/fr/enterprise-cloud@latest/webhooks/testing-and-troubleshooting-webhooks","title":"Test et dépannage des webhooks"},{"href":"/fr/enterprise-cloud@latest/webhooks/testing-and-troubleshooting-webhooks/testing-webhooks","title":"Tester des webhooks"}],"documentType":"article"},"body":"# Test des webhooks\n\nDécouvrez comment tester vos webhooks et votre code qui gère les livraisons de webhook.\n\n## À propos du test des webhooks\n\nVous pouvez tester l'envoi du webhook. Cela vous permettra de vérifier que GitHub envoie une livraison de webhook en réponse à un événement que vous vous attendez à voir déclencher une livraison de webhook.\n\nVous pouvez également tester votre code qui gère les livraisons de webhook en utilisant votre ordinateur ou Codespace comme serveur local, et en transférant les livraisons de webhook à votre serveur local. Cette action vous permet de développer et de déboguer votre code sans déployer votre code sur votre serveur de production.\n\n## Test de la livraison du webhook\n\nVous pouvez déclencher un événement webhook et vérifier que GitHub a envoyé une livraison de webhook.\n\n1. Déclenchez votre webhook. Par exemple, si vous testez un webhook de référentiel qui est abonné à l'événement `issues`, ouvrez un sujet dans le référentiel où le webhook est configuré.\n\n   Vous pouvez également livrer de nouveau des livraisons précédentes de webhooks. Pour plus d’informations, consultez « [Nouvelle livraison des webhooks](/fr/enterprise-cloud@latest/webhooks/testing-and-troubleshooting-webhooks/redelivering-webhooks) ».\n\n   Si vous utilisez un webhook d’organisation ou de référentiel, vous pouvez également utiliser l’API REST pour déclencher l’événement `ping` pour votre webhook. Si vous utilisez un webhook de référentiel et que votre webhook est abonné à l’événement `push`, vous pouvez utiliser l’API REST pour déclencher un événement de test `push` pour votre webhook. Pour plus d’informations, consultez « [Points de terminaison d’API REST pour les webhooks du référentiel](/fr/enterprise-cloud@latest/rest/repos/webhooks) » et « [Points de terminaison d’API REST pour les webhooks de l'organisation](/fr/enterprise-cloud@latest/rest/orgs/webhooks) ».\n\n2. Consultez GitHub pour vérifier qu’une livraison de webhook a été envoyée. Pour plus d’informations sur la façon de procéder pour chaque type de webhook, consultez [Affichage des livraisons de webhook](/fr/enterprise-cloud@latest/webhooks/testing-and-troubleshooting-webhooks/viewing-webhook-deliveries).\n\nSi une livraison de webhook n’a pas été envoyée, ou si une livraison de webhook a été envoyée mais que GitHub indique que la livraison a échoué, reportez-vous au guide de dépannage pour vous aider à diagnostiquer le problème. Pour plus d’informations, consultez « [Résolution des problèmes liés aux webhooks](/fr/enterprise-cloud@latest/webhooks/testing-and-troubleshooting-webhooks/troubleshooting-webhooks) ».\n\n## Test du code webhook localement\n\nPour tester localement le code de votre webhook sur votre ordinateur ou dans votre codespace, vous pouvez utiliser une URL proxy de webhook pour transférer des webhooks depuis GitHub vers votre ordinateur ou votre codespace. Vous pouvez utiliser votre ordinateur ou espace de code comme serveur local pour recevoir ces webhooks transférés.\n\nLes sections suivantes montrent comment utiliser smee.io pour fournir une URL de proxy webhook et transférer des webhooks.\n\nPour obtenir des exemples spécifiques d’étapes de code et de test, consultez « [Gestion des livraisons de webhooks](/fr/enterprise-cloud@latest/webhooks/using-webhooks/handling-webhook-deliveries) ».\n\n### Obtenir une URL de proxy webhook\n\n1. Dans votre navigateur, accédez à <https://smee.io/>.\n2. Cliquez sur **Démarrer un nouveau canal**.\n3. Copiez l’URL complète sous « URL du proxy webhook ». Vous utiliserez cette URL dans la procédure d’installation suivante.\n\n### Configurer un webhook afin d'utiliser l'URL de proxy du webhook\n\nConfigurez votre webhook pour utiliser l’URL du proxy webhook ci-dessus. Pour plus d’informations, consultez « [Création de webhooks](/fr/enterprise-cloud@latest/webhooks/using-webhooks/creating-webhooks) » et « [Édition de webhooks](/fr/enterprise-cloud@latest/webhooks/using-webhooks/editing-webhooks) ».\n\nDésormais, GitHub enverra des notifications webhook à cette URL.\n\n### Démarrez un serveur local\n\nSur votre ordinateur ou espace de code, démarrez un serveur local. La manière dont vous procédez dépend de la façon dont vous écrivez votre code pour recevoir les webhooks. Pour obtenir des exemples, consultez [Gestion des livraisons de webhooks](/fr/enterprise-cloud@latest/webhooks/using-webhooks/handling-webhook-deliveries).\n\nVous devez vous assurer que votre code peut s’exécuter localement. Par exemple, si votre code s’appuie sur des variables d’environnement sur votre serveur en production, vous devez vous assurer que les variables d’environnement sont également disponibles sur votre serveur local.\n\nVous pouvez également trouver utile d’ajouter des instructions de journal pour vérifier que les étapes de votre code sont exécutées comme prévu.\n\nLaissez votre serveur local en exécution pendant que vous testez votre webhook.\n\n### Redirecteur des webhooks\n\n1. Si vous n’avez pas déjà [smee-client](https://www.npmjs.com/package/smee-client) installé, exécutez la commande suivante dans votre terminal :\n\n   ```shell copy\n   npm install --global smee-client\n   ```\n\n2. Pour recevoir des webhooks transférés à partir de smee.io, exécutez la commande suivante dans votre terminal. Remplacez `WEBHOOK_PROXY_URL` par l’URL de proxy de votre webhook précédent. Remplacez `PATH` par le chemin d’accès ou l’itinéraire géré par votre serveur. Remplacez `PORT` par le port où votre serveur local écoute.\n\n   ```shell copy\n   smee --url WEBHOOK_PROXY_URL --path /PATH --port PORT\n   ```\n\n   Vous devez voir la sortie qui ressemble à ceci, avec les espaces réservés `WEBHOOK_PROXY_URL`, `PORT`, et `PATH` remplacés par les valeurs que vous avez spécifiées :\n\n   ```shell copy\n   Forwarding WEBHOOK_PROXY_URL to http://127.0.0.1:PORT/PATH\n   Connected WEBHOOK_PROXY_URL\n   ```\n\n   À présent, lorsque votre URL de proxy webhook (smee.io URL) reçoit une remise de webhook de GitHub, smee transfère la remise du webhook à votre serveur local.\n\n3. Laissez-le tourner pendant que vous testez votre webhook. Quand vous souhaitez arrêter le transfert de webhooks, entrez <kbd>Ctrl</kbd>+<kbd>C</kbd>.\n\nÀ ce stade, vous devez avoir votre serveur local en marche et le transfert \"smee\" activé.\n\n### Déclencher l'envoi d'un webhook\n\nDéclenchez votre webhook. Par exemple, si vous testez un webhook de référentiel qui est abonné à l'événement `issues`, ouvrez un sujet dans le référentiel où le webhook est configuré.\n\nVous pouvez également livrer de nouveau des livraisons précédentes de webhooks. Pour plus d’informations, consultez « [Nouvelle livraison des webhooks](/fr/enterprise-cloud@latest/webhooks/testing-and-troubleshooting-webhooks/redelivering-webhooks) ».\n\n### Vérifier la livraison\n\nVous pouvez vérifier que GitHub a envoyé une livraison de webhook, que smee a reçu et transféré la livraison, et que votre serveur local a traité la livraison du webhook.\n\n#### Vérifier que GitHub a envoyé une livraison\n\nConsultez GitHub pour vérifier qu’une livraison de webhook a été envoyée. Pour plus d’informations, consultez « [Affichage des livraisons de webhook](/fr/enterprise-cloud@latest/webhooks/testing-and-troubleshooting-webhooks/viewing-webhook-deliveries) ».\n\nSi une livraison de webhook n’a pas été envoyée, ou si une livraison de webhook a été envoyée mais que GitHub indique que la livraison a échoué, reportez-vous au guide de dépannage pour vous aider à diagnostiquer le problème. Pour plus d’informations, consultez « [Résolution des problèmes liés aux webhooks](/fr/enterprise-cloud@latest/webhooks/testing-and-troubleshooting-webhooks/troubleshooting-webhooks) ».\n\n#### Vérifiez que smee a reçu votre livraison de webhook\n\nAccédez à l’URL du proxy de votre webhook sur smee.io. Vous devriez voir un événement qui correspond à l’événement que vous avez déclenché ou renvoyé. Cela indique que GitHub a envoyé avec succès une livraison de webhook à l’URL de payload que vous avez spécifiée.\n\nSi vous ne voyez pas votre livraison de webhook sur smee.io, vérifiez que votre webhook utilise votre URL de proxy webhook (URL smee.io).\n\n#### Vérifiez que smee a correctement transféré la livraison de votre webhook.\n\nDans la fenêtre du terminal où vous avez exécuté la commande `smee --url WEBHOOK_PROXY_URL --path /PATH --port PORT`, vous devriez voir quelque chose comme `POST http://127.0.0.1:3000/webhook - 202`. Cela indique que smee a transféré avec succès votre webhook dans votre serveur local.\n\nSi tu ne vois pas cela, assure-toi que le client smee et ton serveur local fonctionnent. Ces deux processus doivent s’exécuter dans deux fenêtres différentes du terminal.\n\nVous devez aussi rechercher les erreurs dans les fenêtres du terminal où vous exécutez le client smee et votre serveur local. Les erreurs spécifiques dépendent de la façon dont votre code est écrit pour recevoir des webhooks. Pour obtenir des exemples, consultez [Gestion des livraisons de webhooks](/fr/enterprise-cloud@latest/webhooks/using-webhooks/handling-webhook-deliveries).\n\n#### Vérifiez que votre serveur local a traité la livraison du webhook\n\nÀ ce stade, vous avez vérifié que GitHub a envoyé un webhook et que smee a transféré cette livraison vers votre serveur local. À présent, vous devez vérifier que votre code a traité la livraison du webhook comme prévu. La manière dont vous procédez dépend de la façon dont vous écrivez votre code pour recevoir les webhooks. Pour obtenir des exemples, consultez [Gestion des livraisons de webhooks](/fr/enterprise-cloud@latest/webhooks/using-webhooks/handling-webhook-deliveries)."}