Teste automate pentru bannerul de consimțământ cu Playwright: un ghid practic
De ce să automatizezi testarea consimțământului
Verificările manuale ale consimțământului sunt ușor de omis și ușor de greșit. O etichetă nouă adăugată de marketing, o actualizare de temă sau un încărcător de scripturi refăcut pot începe discret să pornească trackere înainte de consimțământ, iar nimeni nu observă până când nu o face un client sau un regulator. Testele automate de browser transformă întrebarea “se mai comportă corect bannerul nostru?” în ceva ce rulează la fiecare lansare. Playwright este o alegere bună pentru că controlează browsere reale, poate intercepta cererile de rețea și oferă contexte de browser proaspete, izolate.
Contextele de test
Fiecare test ar trebui să pornească dintr-un context de browser curat, fără cookie-uri și fără stocare locală. Asta imită un vizitator la prima vizită. Creează un context nou pentru fiecare test în loc să refolosești o pagină, altfel o alegere stocată de un test se scurge în următorul.
Testul 1: Nimic nu pornește înainte de consimțământ
Ascultă fiecare cerere de rețea din momentul în care pagina începe să se încarce. Încarcă pagina, așteaptă să devină inactivă și nu atinge bannerul. Apoi compară cererile cu o listă de domenii de trackere pe care o întreții, cum ar fi analiză, publicitate și pixeli sociali. Testul eșuează dacă vreo cerere merge către un domeniu din listă. Citește și lista de cookie-uri din context și fă testul să eșueze dacă există vreun cookie neesențial.
Testul 2: Refuzul menține totul oprit
- Încarcă pagina într-un context proaspăt.
- Fă clic pe controlul de refuz din banner.
- Navighează la încă două sau trei pagini, inclusiv una cu media încorporată.
- Verifică dacă nu s-au făcut cereri de tracker și dacă nu au fost setate cookie-uri neesențiale.
- Reîncarcă și verifică dacă bannerul rămâne ascuns și alegerea persistă.
Testul 3: Acceptarea activează ce trebuie
Fă clic pe acceptare și verifică dacă etichetele așteptate pornesc acum, de exemplu cererea ta de analiză. Asta te protejează de eșecul opus: un banner care înregistrează consimțământul, dar nu eliberează niciodată scripturile, ceea ce te costă discret date și venituri.
Testul 4: Alegeri granulare
Deschide stratul de preferințe, activează un singur scop și salvează. Verifică dacă etichetele legate de acel scop pornesc, iar cele legate de celelalte nu. Păstrează un mic fișier de corespondență între scopuri și domeniile așteptate, ca testul să fie clar și ușor de actualizat.
Testul 5: Retragerea
Acceptă, apoi redeschide setările prin linkul permanent și retrage consimțământul. Verifică dacă cererile ulterioare către trackere se opresc și dacă starea stocată a consimțământului reflectă schimbarea. Reține că este posibil ca cookie-urile deja setate să trebuiască eliminate explicit, așa că decide care este politica ta și testează-o.
Testul 6: Semnale
Dacă folosești Google Consent Mode, citește data layer-ul în contextul paginii înainte și după fiecare alegere și verifică dacă valorile stării consimțământului se potrivesc: refuzat implicit, acordat pentru categoriile pe care vizitatorul le-a acceptat. Dacă folosești un șir TCF, citește-l prin API-ul TCF și verifică dacă este prezent după o alegere și o reflectă.
Menținerea fiabilității testelor
- Folosește selectori stabili, cum ar fi atribute de test sau roluri accesibile, în loc de clase CSS care se schimbă cu actualizările de design.
- Așteaptă condiții explicite, nu întârzieri fixe.
- Rulează testele pe o copie de staging care are aceeași configurare de etichete ca producția.
- Rulează o versiune mică a setului de teste după un program, nu doar la implementări, deoarece scripturile terților se schimbă fără lansarea ta.
- Testează principalele regiuni pe care le deservești setând geolocația sau folosind suprascrierea de regiune oferită de CMP.
Unde se potrivește FlexyConsent
FlexyConsent acceptă IAB TCF 2.4, IAB GPP v1.1 și Google Consent Mode v2, astfel încât semnalele pe care le verifici în teste sunt standard și pot fi citite din pagină. Bannerul este disponibil în 58 de limbi; dacă deservești mai multe, include un test care încarcă cel puțin o versiune non-engleză.
Concluzii principale
- Folosește un context de browser proaspăt pentru fiecare test, pentru a simula un vizitator la prima vizită.
- Verifică cererile de rețea și cookie-urile, nu doar cum arată bannerul.
- Acoperă patru căi: fără interacțiune, refuz, acceptare și retragere.
- Verifică și semnalele de consimțământ în data layer sau în API-ul TCF.
- Rulează setul de teste la lansare și după program, pentru a prinde deriva cauzată de scripturile terților.