# Une astreinte sans tests de fumée avant chaque intervention d’urgence

> 23 heures, un site en panne, une correction appliquée en urgence. Sans une vérification minimale avant de raccrocher, personne ne sait vraiment si le correctif tient.

- Auteur : WordPress Développement
- Publié le : 2021-12-26
- Mis à jour le : 2021-12-26
- Catégorie : Tests
- URL : https://www.wpmoderne.fr/tests/astreinte-sans-tests-de-fumee-intervention-urgence/

## L’essentiel

- Une vérification minimale avant de considérer une intervention terminée
- Quelques minutes suffisent pour éviter un second réveil nocturne
- Une liste courte vaut mieux qu'aucune vérification

« La documentation officielle recommande de vérifier que l'application démarre encore avant de considérer un déploiement terminé. » Cette phrase, presque une évidence sur le papier, devient beaucoup moins évidente à respecter à vingt-trois heures, pour un développeur freelance qui vient de corriger en urgence un site tombé en panne, pressé de retourner se coucher après avoir appliqué le correctif.

Pourtant, c'est précisément dans ce contexte que l'absence de vérification rapide coûte le plus cher : un correctif appliqué sous pression, sans le moindre test après coup, peut résoudre le symptôme visible tout en introduisant un problème différent, découvert seulement au réveil suivant, ou pire, par le client lui-même.

## Ce que signifie réellement un test de fumée

Un test de fumée, terme emprunté à l'industrie où l'on vérifiait autrefois qu'un appareil électronique ne dégageait pas de fumée à la mise sous tension, désigne une vérification minimale et rapide : le site répond-il, la page d'accueil s'affiche-t-elle, un formulaire critique fonctionne-t-il encore. Ce n'est pas une suite de tests exhaustive, seulement un filet de sécurité avant de considérer une intervention comme terminée.

```
#!/usr/bin/env bash
set -euo pipefail

URL="https://exemple-client.fr"

echo "Vérification du code de statut HTTP..."
STATUT=$(curl -s -o /dev/null -w "%{http_code}" "$URL")
if [ "$STATUT" != "200" ]; then
    echo "ÉCHEC : statut HTTP $STATUT"
    exit 1
fi

echo "Vérification de la présence du formulaire de contact..."
if ! curl -s "$URL/contact/" | grep -q "wpcf7-form"; then
    echo "ÉCHEC : formulaire de contact introuvable"
    exit 1
fi

echo "OK : tests de fumée passés"
```

## Ce qui manque sans cette vérification

> L'essentiel à retenir : Une vérification minimale avant de considérer une intervention terminée ; Quelques minutes suffisent pour éviter un second réveil nocturne ; Une liste courte vaut mieux qu'aucune vérification

Sans un script de ce type, ou même une checklist manuelle équivalente, une intervention d'urgence se termine dès que le symptôme initial disparaît de l'écran. Or plusieurs catégories de régressions passent facilement inaperçues à ce stade :

- Un correctif qui résout l'erreur visible mais désactive accidentellement une fonctionnalité annexe, par exemple un cache ou une extension tierce, en modifiant un fichier de configuration partagé.
- Une erreur PHP silencieuse, non affichée en production, qui n'apparaît que dans les journaux du serveur, jamais consultés à ce moment précis de fatigue et d'urgence.
- Un formulaire de contact ou un tunnel de commande resté fonctionnel en apparence, mais dont l'envoi final échoue silencieusement, un problème qui ne sera signalé par le client que plusieurs jours plus tard.

Chacun de ces cas, pris isolément, semble mineur. Additionnés sur plusieurs mois d'astreinte sans vérification systématique, ils construisent une réputation de service imprévisible, même si chaque panne individuelle a bien été corrigée sur le moment.

## Une liste courte, pensée pour être suivie à moitié endormi

La contrainte principale d'une intervention nocturne n'est pas le manque de compétence, mais le manque de vigilance disponible à ce moment précis. Une checklist efficace pour ce contexte doit donc tenir sur un seul écran, sans détour :

- Le site répond avec un code de statut HTTP 200 sur la page d'accueil et sur la page qui posait problème initialement.
- Aucune erreur PHP fatale n'apparaît dans les journaux du serveur sur les dernières minutes suivant le correctif.
- Le formulaire ou le tunnel de commande critique du site accepte une soumission de test.
- Le correctif appliqué est noté quelque part, même sommairement, pour être retrouvé et documenté proprement le lendemain.

> Une intervention d'urgence n'est jamais vraiment terminée au moment où le symptôme disparaît : elle l'est au moment où une vérification, même minimale, confirme qu'aucun autre problème n'a été introduit en cours de route.

## Automatiser progressivement plutôt que tout de suite

Un freelance ou une petite agence n'a généralement ni le temps ni la nécessité immédiate de construire une suite de tests de fumée sophistiquée pour chaque client dès le premier incident. La progression réaliste consiste à commencer par une checklist manuelle courte, suivie systématiquement après chaque intervention, puis à automatiser progressivement les vérifications qui reviennent le plus souvent, sous la forme d'un script simple exécutable en quelques secondes.

## Le coût réel d'un second réveil

Le calcul économique est simple : quelques minutes de vérification après un correctif coûtent nettement moins cher qu'un second appel d'urgence, deux ou trois heures plus tard, pour un problème directement causé par l'intervention précédente. Ce second réveil coûte non seulement du temps, mais aussi de la confiance, particulièrement difficile à reconstruire avec un client qui associe alors chaque intervention nocturne à une nouvelle source d'incertitude plutôt qu'à une résolution fiable.

## En résumé

Un test de fumée après une intervention d'urgence ne remplace jamais une suite de tests automatisés complète, mais il comble le vide qui existe entre la résolution apparente d'un symptôme et la certitude qu'aucun autre problème n'a été introduit au passage. Pour un freelance ou une petite agence sous astreinte, quelques minutes de vérification systématique, suivies même sous forme de checklist manuelle, réduisent directement le risque d'un second réveil dans la même nuit.
