Tests automatisés de bannière de consentement avec Playwright : un guide pratique

Pourquoi automatiser les tests de consentement

Les vérifications manuelles du consentement sont faciles à sauter et faciles à rater. Une nouvelle balise ajoutée par le marketing, une mise à jour de thème ou un chargeur de scripts remanié peuvent discrètement déclencher des traceurs avant le consentement, et personne ne s'en aperçoit jusqu'à ce qu'un client ou un régulateur le fasse. Les tests automatisés dans le navigateur transforment la question « notre bannière se comporte-t-elle toujours correctement ? » en une vérification exécutée à chaque version. Playwright convient bien car il pilote de vrais navigateurs, peut intercepter les requêtes réseau et fournit des contextes de navigateur neufs et isolés.

Les contextes de test

Chaque test doit partir d'un contexte de navigateur vierge, sans cookies ni stockage local. Cela imite un primo-visiteur. Créez un nouveau contexte par test plutôt que de réutiliser une page, faute de quoi un choix enregistré par un test contamine le suivant.

Test 1 : rien ne se déclenche avant le consentement

Écoutez chaque requête réseau dès que la page commence à se charger. Chargez la page, attendez qu'elle soit inactive et ne touchez pas à la bannière. Comparez ensuite les requêtes à une liste de domaines de traceurs que vous maintenez, par exemple pour l'analyse, la publicité et les pixels sociaux. Le test échoue si une requête part vers un domaine de la liste. Lisez aussi la liste des cookies du contexte et faites échouer le test si un cookie non essentiel existe.

Test 2 : refuser garde tout désactivé

  1. Chargez la page dans un contexte neuf.
  2. Cliquez sur le bouton de refus de la bannière.
  3. Naviguez vers deux ou trois autres pages, dont une avec des médias intégrés.
  4. Vérifiez qu'aucune requête de traceur n'a été émise et qu'aucun cookie non essentiel n'a été déposé.
  5. Rechargez et vérifiez que la bannière reste masquée et que le choix persiste.

Test 3 : accepter active ce qui doit l'être

Cliquez sur accepter et vérifiez que les balises attendues se déclenchent désormais, par exemple votre requête d'analyse. Cela protège contre l'échec inverse : une bannière qui enregistre le consentement mais ne libère jamais les scripts, ce qui vous coûte discrètement des données et des revenus.

Test 4 : choix granulaires

Ouvrez la couche des préférences, activez une seule finalité et enregistrez. Vérifiez que les balises liées à cette finalité se déclenchent et que celles liées aux autres ne le font pas. Gardez un petit fichier de correspondance entre finalité et domaines attendus pour que le test reste lisible et facile à mettre à jour.

Test 5 : retrait

Acceptez, puis rouvrez les paramètres via votre lien permanent et retirez votre consentement. Vérifiez que les requêtes ultérieures vers les traceurs cessent et que l'état de consentement stocké reflète le changement. Notez que les cookies déjà déposés peuvent devoir être supprimés explicitement ; décidez donc de votre politique et testez-la.

Test 6 : signaux

Si vous utilisez Google Consent Mode, lisez le data layer dans le contexte de la page avant et après chaque choix et vérifiez que les valeurs de l'état de consentement correspondent : refusé par défaut, accordé pour les catégories acceptées par le visiteur. Si vous utilisez une chaîne TCF, lisez-la via l'API TCF et vérifiez qu'elle est présente après un choix et qu'elle le reflète.

Garder des tests fiables

Où intervient FlexyConsent

FlexyConsent prend en charge IAB TCF 2.4, IAB GPP v1.1 et Google Consent Mode v2 ; les signaux sur lesquels portent vos assertions sont donc des signaux standard que vous pouvez lire depuis la page. La bannière est disponible en 58 langues ; si vous en servez plusieurs, incluez un test qui charge au moins une version non anglaise.

Points clés à retenir

← Blog Tout lire →