Automatizirani testovi banera za privolu s Playwrightom: praktični vodič
Zašto automatizirati testiranje privole
Ručne provjere privole lako je preskočiti i lako pogriješiti. Nova oznaka koju doda marketing, ažuriranje teme ili preoblikovan učitavač skripti mogu tiho početi pokretati alate za praćenje prije privole, a nitko to ne primijeti dok ne primijeti kupac ili regulator. Automatizirani testovi preglednika pretvaraju pitanje “ponaša li se naš baner i dalje ispravno?” u nešto što se izvodi uz svako izdanje. Playwright je dobar izbor jer upravlja stvarnim preglednicima, može presretati mrežne zahtjeve i daje svježe, izolirane kontekste preglednika.
Konteksti testova
Svaki test treba početi iz čistog konteksta preglednika, bez kolačića i lokalne pohrane. To oponaša posjetitelja koji dolazi prvi put. Stvorite novi kontekst za svaki test umjesto da ponovno koristite stranicu, inače izbor pohranjen u jednom testu curi u sljedeći.
Test 1: Ništa se ne pokreće prije privole
Slušajte svaki mrežni zahtjev od trenutka početka učitavanja stranice. Učitajte stranicu, pričekajte da bude u mirovanju i ne dodirujte baner. Zatim usporedite zahtjeve s popisom domena alata za praćenje koji održavate, poput analitike, oglašavanja i društvenih piksela. Test pada ako bilo koji zahtjev ide na domenu s popisa. Također pročitajte popis kolačića iz konteksta i neka test padne ako postoji ijedan neobavezan kolačić.
Test 2: Odbijanje drži sve isključenim
- Učitajte stranicu u svježem kontekstu.
- Kliknite kontrolu za odbijanje u baneru.
- Prijeđite na dvije ili tri daljnje stranice, uključujući jednu s ugrađenim medijima.
- Provjerite da nije bilo zahtjeva alata za praćenje i da nisu postavljeni neobavezni kolačići.
- Ponovno učitajte i provjerite da baner ostaje skriven i da se izbor zadržava.
Test 3: Prihvaćanje uključuje ono što treba
Kliknite prihvaćanje i provjerite da se očekivane oznake sada pokreću, primjerice vaš zahtjev za analitiku. Time štitite od suprotnog propusta: banera koji bilježi privolu, ali nikad ne oslobađa skripte, što vas tiho košta podataka i prihoda.
Test 4: Granularni izbori
Otvorite razinu postavki, uključite samo jednu svrhu i spremite. Provjerite da se oznake vezane uz tu svrhu pokreću, a one vezane uz ostale ne. Držite malu datoteku s mapiranjem svrha na očekivane domene kako bi test bio jasan i lak za ažuriranje.
Test 5: Povlačenje
Prihvatite, zatim ponovno otvorite postavke preko trajne poveznice i povucite privolu. Provjerite da se naknadni zahtjevi prema alatima za praćenje zaustavljaju i da pohranjeno stanje privole odražava promjenu. Imajte na umu da će se već postavljeni kolačići možda morati izričito ukloniti, stoga odlučite kakva je vaša politika i testirajte je.
Test 6: Signali
Ako koristite Google Consent Mode, pročitajte data layer u kontekstu stranice prije i poslije svakog izbora i provjerite podudaraju li se vrijednosti stanja privole: odbijeno prema zadanim postavkama, odobreno za kategorije koje je posjetitelj prihvatio. Ako koristite TCF string, pročitajte ga preko TCF API-ja i provjerite da postoji nakon izbora i da ga odražava.
Održavanje pouzdanosti testova
- Koristite stabilne selektore, poput testnih atributa ili pristupačnih uloga, umjesto CSS klasa koje se mijenjaju s dizajnerskim ažuriranjima.
- Čekajte izričite uvjete, a ne fiksna kašnjenja.
- Pokrećite testove na staging kopiji koja ima isti raspored oznaka kao produkcija.
- Pokrećite manju verziju skupa testova prema rasporedu, a ne samo pri puštanju u rad, jer se skripte trećih strana mijenjaju bez vašeg izdanja.
- Testirajte glavne regije koje opslužujete postavljanjem geolokacije ili korištenjem zamjene regije koju nudi vaš CMP.
Gdje se uklapa FlexyConsent
FlexyConsent podržava IAB TCF 2.4, IAB GPP v1.1 i Google Consent Mode v2, pa su signali na koje se oslanjate u testovima standardni i mogu se čitati sa stranice. Baner je dostupan na 58 jezika; ako opslužujete više njih, uključite test koji učitava barem jednu neengleski verziju.
Ključni zaključci
- Koristite svježi kontekst preglednika za svaki test kako biste simulirali posjetitelja koji dolazi prvi put.
- Provjeravajte mrežne zahtjeve i kolačiće, a ne samo kako baner izgleda.
- Pokrijte četiri puta: bez interakcije, odbijanje, prihvaćanje i povlačenje.
- Provjeravajte signale privole i u data layeru ili TCF API-ju.
- Pokrećite skup testova pri izdanju i prema rasporedu kako biste uhvatili odstupanja zbog skripti trećih strana.