Diwall

Français
Télécharger 1.24.4

Surveiller les changements d’une page

Enregistrer une référence, comparer avec elle, être prévenu quand quelque chose a bougé. Y compris ce que personne ne dit : une page vivante ne coïncide jamais exactement avec elle-même.

diwall-watch répond à une seule question : cette page a-t-elle changé depuis la dernière fois ?

Il enregistre une image de référence, compare l’état actuel à celle-ci et rend un verdict. Utile après un déploiement, sur une page que vous ne maîtrisez pas, ou sur tout ce que vous vérifieriez sinon à l’œil chaque matin.

Enregistrer une référence, puis comparer

# Une fois — enregistrer à quoi ressemble la « normale »
diwall-watch --url https://target.local/ --sauver-reference --guide-version 1.3

# Ensuite — aussi souvent que vous voulez
diwall-watch --url https://target.local/ \
  --comparer-pixel /opt/diwall/references/target.local/reference.png \
  --guide-version 1.3

La comparaison est arithmétique : une proportion de pixels différents, et un verdict. Aucun modèle, aucune interprétation, aucun réseau au-delà de la page elle-même. La même entrée donne toujours la même réponse — c’est ce qui permet de s’en servir dans une vérification sans surveillance.

Ce qui surprend tout le monde

Deux captures d’une page inchangée ne sont pas identiques.

Le rendu n’est pas parfaitement déterministe. Le lissage sous-pixel, l’ajustement des polices à la grille de pixels, un filet de barre de défilement : deux rendus pris à quelques secondes d’intervalle sur une page que personne n’a touchée peuvent différer d’environ 0,19 % des pixels.

C’est le plancher. Un seuil fixé en dessous signale des changements qui n’ont pas eu lieu ; un changement réel plus petit que lui se noie dans le bruit. Les deux défaillances sont silencieuses, et c’est pourquoi il faut le savoir avant de se fier à un verdict.

--seuil-bruit 0.2      # en dessous : du bruit
--seuil-stable 0.5     # au-dessus : un changement

Exclure ce qui doit bouger

Un tableau de bord avec des compteurs en direct, un horodatage dans un coin, une bannière qui tourne : tout cela change chaque seconde, par construction. Le comparer tel quel donne soit de fausses alertes permanentes, soit un seuil si haut qu’il masque tout le reste.

diwall-watch --url https://target.local/ \
  --comparer-pixel reference.png \
  --exclure-zone 0,0,400,80 \
  --guide-version 1.3

Excluez la zone faite pour changer, et le reste de la page devient surveillable avec un seuil strict. La leçon a coûté : une comparaison de tableau de bord a un jour renvoyé stable à 0,19 % alors que la page différait réellement, parce que la zone vivante absorbait toute la marge.

Plusieurs vues d’une même page

diwall-watch --url https://target.local/ --sauver-reference \
  --nom dashboard --guide-version 1.3

--nom garde des références distinctes pour une même URL — déconnecté et connecté, avant et après un déploiement, écran large et écran étroit. Sans lui, chaque nouvelle référence écrase la précédente.

Surveiller une page derrière une connexion

--sauver-reference fait sa propre capture, et cette capture n’est pas authentifiée. Pour une page protégée, produisez l’image avec un scénario qui se connecte, puis transmettez-la :

diwall-rpa --scenario login-dashboard.json --guide-version 1.3
diwall-watch --url https://target.local/dashboard \
  --capture /tmp/diwall/…/capture_….png --sauver-reference \
  --nom dashboard --guide-version 1.3

--capture prend un PNG existant au lieu d’en faire un. Même chose côté comparaison : capture par le scénario, comparaison avec --capture.

La structure plutôt que les pixels

Si ce qui compte pour vous, c’est que la page fonctionne encore plutôt qu’elle ait le même aspect, comparez la structure :

diwall-monitor-verifier --scenario page.json --reference page.ref.json

Il compare le code HTTP, les statistiques du DOM et les résultats des assertions evaluer à une référence enregistrée — pas de pixels, pas de modèle de vision, insensible à une mise à jour de police. Autre question, autre outil, et souvent le meilleur pour une vérification sans surveillance.

En bref

  • Enregistrer une référence, comparer, lire le verdict.
  • Les rendus d’une page inchangée diffèrent d’environ 0,19 % — c’est votre plancher de bruit.
  • --exclure-zone pour tout ce qui est fait pour bouger.
  • --nom pour plusieurs vues d’une même URL.
  • --capture pour surveiller une page derrière une connexion.
  • La comparaison de structure quand l’apparence n’est pas l’enjeu.