Аутоматизовани тестови банера за сагласност са Playwright-ом: практичан водич
Зашто аутоматизовати тестирање сагласности
Ручне провере сагласности лако је прескочити и лако је погрешити. Нова ознака коју дода маркетинг, ажурирање теме или преправљен учитавач скрипти могу тихо почети да покрећу трекере пре сагласности, а нико то не примети док не примети клијент или регулатор. Аутоматизовани тестови у прегледачу претварају питање „да ли се наш банер и даље понаша исправно?“ у нешто што се покреће при свакој верзији. Playwright је добар избор јер управља правим прегледачима, може да пресреће мрежне захтеве и даје свеже, изоловане контексте прегледача.
Контексти тестова
Сваки тест треба да почне од чистог контекста прегледача, без колачића и локалног складишта. То опонаша посетиоца који долази први пут. Направите нов контекст за сваки тест уместо да поново користите страницу, иначе се избор сачуван у једном тесту прелива у следећи.
Тест 1: ништа се не покреће пре сагласности
Слушајте сваки мрежни захтев од тренутка када страница почне да се учитава. Учитајте страницу, сачекајте да се умири и немојте додиривати банер. Затим упоредите захтеве са списком домена трекера који одржавате, као што су аналитика, оглашавање и друштвени пиксели. Тест пада ако било који захтев иде ка домену са списка. Такође прочитајте листу колачића из контекста и нека тест падне ако постоји било који необавезни колачић.
Тест 2: одбијање држи ствари искљученим
- Учитајте страницу у свежем контексту.
- Кликните контролу за одбијање у банеру.
- Пређите на две или три даље странице, укључујући једну са уграђеним медијима.
- Утврдите да нису послати захтеви трекерима и да нису постављени необавезни колачићи.
- Поново учитајте и утврдите да банер остаје сакривен и да избор опстаје.
Тест 3: прихватање омогућава оно што треба
Кликните прихватање и утврдите да се очекиване ознаке сада покрећу, на пример ваш аналитички захтев. Ово чува од супротног квара: банера који бележи сагласност, али никада не ослобађа скрипте, што вас тихо кошта података и прихода.
Тест 4: детаљни избори
Отворите слој са подешавањима, омогућите само једну сврху и сачувајте. Утврдите да се ознаке везане за ту сврху покрећу, а оне везане за остале не. Држите малу датотеку мапирања од сврхе до очекиваних домена како би тест био јасан и лак за ажурирање.
Тест 5: повлачење
Прихватите, затим поново отворите подешавања преко сталне везе и повуците сагласност. Утврдите да захтеви ка трекерима после тога престају и да сачувано стање сагласности одражава промену. Имајте на уму да већ постављене колачиће можда треба изричито уклонити, зато одлучите која је ваша политика и тестирајте је.
Тест 6: сигнали
Ако користите Google Consent Mode, прочитајте data layer у контексту странице пре и после сваког избора и утврдите да вредности стања сагласности одговарају: подразумевано одбијено, одобрено за категорије које је посетилац прихватио. Ако користите TCF стринг, прочитајте га преко TCF API-ја и утврдите да постоји после избора и да га одражава.
Одржавање поузданости тестова
- Користите стабилне селекторе, као што су атрибути за тестове или приступачне улоге, уместо CSS класа које се мењају са ажурирањима дизајна.
- Чекајте на изричите услове, а не на фиксна кашњења.
- Покрећите тестове на копији за стејџинг која има исту поставку ознака као продукција.
- Покрећите малу верзију пакета тестова по распореду, а не само при објавама, јер се скрипте трећих страна мењају без ваше верзије.
- Тестирајте главне регионе које опслужујете постављањем геолокације или коришћењем замене региона коју нуди ваш CMP.
Где се FlexyConsent уклапа
FlexyConsent подржава IAB TCF 2.4, IAB GPP v1.1 и Google Consent Mode v2, па су сигнали на које се ослањате у тестовима стандардни и можете их прочитати са странице. Банер је доступан на 58 језика; ако опслужујете више њих, укључите тест који учитава бар једну верзију која није на енглеском.
Кључни закључци
- Користите свеж контекст прегледача за сваки тест да бисте симулирали посетиоца који долази први пут.
- Проверавајте мрежне захтеве и колачиће, а не само како банер изгледа.
- Покријте четири путање: без интеракције, одбијање, прихватање и повлачење.
- Проверите и сигнале сагласности у data layer-у или TCF API-ју.
- Покрећите пакет при објавама и по распореду да бисте ухватили одступања услед скрипти трећих страна.