Pengujian yang difasilitasi Chrome

Untuk bersiap menghadapi penghentian penggunaan cookie pihak ketiga, kami menyediakan mode pengujian yang difasilitasi Chrome yang memungkinkan situs melihat pratinjau cara kerja fitur dan perilaku situs tanpa cookie pihak ketiga. Panduan ini memberikan ringkasan mode pengujian yang akan disediakan Chrome dan cara mengakses label grup eksperimen.

Browser Chrome dalam konteks ini merujuk pada klien Chrome: penginstalan Chrome di perangkat. Setiap direktori data pengguna individual merupakan klien yang berbeda.

Grup eksperimen: sekumpulan browser Chrome yang mengaktifkan, menonaktifkan, atau mengonfigurasi fitur tertentu. Dalam konteks pengujian yang difasilitasi Chrome, sekumpulan browser yang labelnya ditetapkan.

Label: dalam konteks ini, nilai header permintaan yang ditetapkan untuk browser yang termasuk dalam grup eksperimen. Setiap browser dalam grup eksperimen akan tetap berada dalam grup tersebut selama periode pengujian yang difasilitasi Chrome, sehingga memastikan label untuk browser tetap konsisten di seluruh penguji.

Kami telah menawarkan dua mode yang berbeda:

  • Mode A: Mulai November 2023, organisasi yang menguji API R&M PS dapat memilih untuk menerima label yang konsisten di sebagian browser Chrome untuk memungkinkan pengujian terkoordinasi di berbagai penguji.
  • Mode B: Mulai 4 Januari 2024, Chrome secara global menonaktifkan cookie pihak ketiga untuk sebagian browser Chrome.

Jika dinonaktifkan di Mode B, cookie pihak ketiga akan tetap dinonaktifkan hingga cookie pihak ketiga dihentikan sepenuhnya.

Kami telah bekerja sama dengan CMA untuk memastikan bahwa mode pengujian ini selaras dengan framework pengujian (dan linimasa) untuk pihak ketiga sebagaimana tercantum dalam panduannya terkait pengujian industri. Oleh karena itu, CMA mengantisipasi bahwa hasil dari pengujian dalam mode ini dapat digunakan dalam penilaiannya terhadap Privacy Sandbox. CMA telah menunjukkan bahwa mereka cenderung memberikan bobot yang lebih besar pada hasil dari Desain Eksperimental 2, yang menggunakan label Mode B dan label Mode A 1. Lihat panduan 26 Oktober CMA untuk mengetahui informasi selengkapnya tentang Desain Eksperimental 2.

Label dapat diakses menggunakan nilai Cookie-Deprecation sementara yang tersedia dari header HTTP atau JavaScript API. Lihat bagian selanjutnya Mengakses label menggunakan nilai Penghentian Penggunaan Cookie untuk detail penerapan.

Kami juga akan mengirimkan proposal ini melalui proses pengembangan Blink biasa, dengan desain teknis dan pencapaian rilis Chrome yang akan diselesaikan. Meskipun ini adalah implementasi yang ingin kami kirimkan, diskusi dan persetujuan tambahan berarti detail ini masih dapat berubah. Kami akan terus memperbarui halaman ini seiring dengan progres rencana, dan Anda dapat terus memberikan masukan atau pertanyaan.

Mode A: Grup browser berlabel

Organisasi yang berpartisipasi dalam pengujian akan dapat memilih untuk menerima serangkaian label persisten untuk sebagian browser Chrome, sehingga memungkinkan eksperimen terkoordinasi di berbagai teknologi iklan pada kumpulan browser yang sama. Misalnya, jika browser termasuk dalam grup eksperimen label_only_3 (seperti yang ditunjukkan dalam tabel berikut), semua teknologi iklan yang berpartisipasi akan dapat melihat label label_only_3 yang sama dan berkoordinasi sebagaimana mestinya: menggunakan PS R&M API, tetapi tidak menggunakan cookie pihak ketiga. Peserta di halaman ini diharapkan dapat memastikan label diteruskan ke peserta lain untuk memungkinkan eksperimen yang konsisten di seluruh proses pemilihan dan pengukuran iklan.

Misalnya, cara ini memungkinkan beberapa peserta menjalankan lelang Protected Audience tanpa cookie pihak ketiga di seluruh grup browser yang konsisten. Peserta penjual lelang akan meneruskan label yang diamati kepada pembeli untuk memfasilitasi pengujian terkoordinasi.

Label tidak memengaruhi perilaku apa pun dalam instance Chrome tersebut, termasuk ketersediaan cookie pihak ketiga. Label menyediakan pengelompokan untuk eksperimen independen dan terkoordinasi, tetapi ini bergantung pada pihak yang berpartisipasi untuk menerapkan parameter yang relevan untuk eksperimen tersebut. Jika Anda menguji efek penghapusan cookie pihak ketiga, setiap peserta bertanggung jawab untuk mengecualikan data cookie pihak ketiga untuk browser dengan label tersebut.

Tujuannya adalah memiliki grup yang mewakili traffic Chrome normal. Artinya, cookie pihak ketiga dan PS R&M API akan tersedia, meskipun beberapa pengguna mungkin telah menggunakan setelan atau ekstensi untuk mengubah atau menonaktifkan fitur.

Label umumnya akan tetap ada selama sesi penjelajahan di Chrome, dan di seluruh sesi. Namun, hal ini tidak dijamin karena ada skenario yang jarang terjadi, saat mereset browser sepenuhnya juga dapat mereset label saat ini.

Kami berencana menyertakan 8,5% browser Chrome Stabil untuk Mode A, dan proposal awal kami membagi populasi tersebut menjadi sembilan grup. Subgrup yang lebih kecil dimaksudkan untuk memungkinkan fleksibilitas teknologi iklan dalam menggabungkan label untuk membuat eksperimen mereka sendiri dengan berbagai ukuran. Grup tidak tumpang-tindih.

Perhatikan bahwa label control_1.* dimaksudkan untuk digunakan sebagai "Kontrol 1" seperti yang diuraikan dalam panduan pengujian industri CMA, sehingga peserta pengujian tidak boleh menggunakan Topics API atau menjalankan lelang Protected Audience untuk traffic ini. Karena label tidak memengaruhi perilaku browser, peserta tidak boleh meneruskan topik yang diamati atau menjalankan lelang Protected Audience saat mereka mendeteksi label grup control_1.*.

Kami menerima masukan tentang apakah pilihan grup ini memenuhi kebutuhan organisasi yang berpartisipasi.

Label % Traffic stabil
control_1.1 0,25
control_1.2 0,25
control_1.3 0,25
control_1.4 0,25
label_only_1 1,5
label_only_2 1,5
label_only_3 1,5
label_only_4 1,5
label_only_5 1,5

Grup browser label_only_ Mode A telah tersedia sejak November 2023, dan grup control_1_* Mode A tersedia mulai 4 Januari 2024.

Mode B: Menonaktifkan 1% cookie pihak ketiga

Chrome menonaktifkan cookie pihak ketiga untuk sekitar 1% browser Stabil Chrome mulai 4 Januari 2024 (dan juga di browser Dev, Canary, dan Beta selama Kuartal 4 2023). Organisasi yang menguji PS R&M API tidak perlu memilih untuk ikut serta dalam mode ini, karena mode ini akan diterapkan secara seragam di seluruh populasi browser. Tentu saja, ada kemungkinan bahwa beberapa fitur situs dapat terpengaruh jika situs belum mengadopsi solusi alternatif, seperti CHIPS atau Set Situs Terkait.

Selain itu, kami berencana untuk menyediakan sebagian kecil traffic dalam Mode B yang menonaktifkan PS R&M API. API lain, seperti Set Situs Terkait, CHIPS, dan FedCM, tidak akan dinonaktifkan. Kami memperkirakan bahwa kombinasi ini akan berguna untuk menetapkan dasar performa bagi browser tanpa cookie pihak ketiga dan tanpa API PS R&M.

Sebagai bagian dari Mode B, kami juga menyediakan label untuk browser yang terpengaruh. Label tersedia bersamaan dengan API dinonaktifkan. Kami mengusulkan untuk membagi populasi menjadi tiga grup treatment_1.* tempat cookie pihak ketiga dinonaktifkan, tetapi PS R&M API tersedia, dan satu grup control_2 tempat kedua cookie pihak ketiga dan PS R&M API dinonaktifkan.

Untuk membantu proses debug integrasi Attribution Reporting API dan Private Aggregation API serta membantu peserta pengujian lebih memahami dampak derau, laporan debug ARA dan laporan debug Agregasi Pribadi akan tetap tersedia untuk browser di Mode B, selama pengguna tidak memblokir cookie pihak ketiga secara eksplisit. Laporan debug tidak akan tersedia di control_2, karena PS R&M API tidak tersedia di slice tersebut. Laporan debug masih akan dihentikan bersamaan dengan penghentian cookie pihak ketiga.

  • Untuk Attribution Reporting API, karena cookie pihak ketiga dinonaktifkan, asal pelaporan tidak akan dapat menetapkan cookie ar_debug dan harus bergantung pada penetapan kolom debug_key (untuk laporan atribusi-sukses) dan kolom debug_reporting (untuk laporan panjang) untuk memilih ikut serta atau tidak menerima laporan proses debug.
  • Untuk Private Aggregation API, asal pelaporan harus bergantung pada panggilan enableDebugMode() untuk mengontrol keikutsertaan dalam menerima laporan proses debug. Perusahaan harus terus mempertimbangkan bagaimana kewajiban peraturan mungkin berlaku untuk penggunaan Attribution Reporting API dan Private Aggregation API, termasuk laporan debug.

Mode A terus berjalan dan grup ini berbeda dari grup Mode A, seperti pada pengguna akan berada dalam Mode A, Mode B, atau tidak keduanya. Peserta pengujian harus menggunakan traffic control_1.* sebagai grup kontrol yang mewakili status quo dengan cookie pihak ketiga.

Label % Traffic stabil
treatment_1.1 0,25
treatment_1.2 0,25
treatment_1.3 0,25
control_2 0,25

Chrome juga telah membatasi cookie untuk 20% klien Chrome Canary, Dev, dan Beta.

Label % traffic sebelum Stabil
prestable_treatment_1 10%
prestable_control_2 10%

Penyertaan dalam salah satu grup eksperimen ini akan memiliki efek yang sama seperti pada varian Stabilnya.

Seperti halnya Mode A, API R&M PS tidak dijamin akan tersedia, karena pengguna dapat menonaktifkannya dari setelan Privasi dan keamanan Chrome. Demikian juga, cookie pihak ketiga tidak dijamin akan dinonaktifkan untuk setiap anggota grup control_2, karena pengguna dapat mengakses UI browser untuk mengizinkan cookie pihak ketiga untuk suatu situs.

Pemantauan eksperimen

Pastikan untuk memantau volume traffic relatif dari setiap label perlakuan dan label kontrol. treatment_1.1 harus memiliki jumlah traffic yang kurang lebih sama dengan treatment_1.2 dan treatment_1.3.

Sebaiknya gunakan pertimbangan terkait traffic yang berisi label yang berasal dari versi Chrome sebelum versi 120. Jika tim Anda yang biasanya menangani traffic tidak valid mengidentifikasi agen pengguna yang menunjukkan karakteristik traffic tidak valid, sebaiknya filter traffic tersebut dari hasil pengujian.

Label sebelum periode

Hingga Januari 2024, kami menjalankan pra-periode untuk beberapa grup eksperimen: periode waktu yang memungkinkan Chrome mengukur secara akurat dan memilih grup yang tidak bias secara statistik. Sebelum periode ini berjalan untuk semua grup yang dijadwalkan untuk dimulai pada bulan Januari: grup Mode B dan grup Control_1.*. Tidak diperlukan tindakan developer atau situs di sini—grup pra-periode ini tidak akan mengalami perubahan perilaku atau ketersediaan API—tetapi Anda mungkin melihat label preperiod ditampilkan dalam beberapa situasi. Meskipun browser yang menerima label preperiod dapat bertransisi ke salah satu grup eksperimen, hal ini tidak dijamin, jadi sebaiknya jangan berasumsi bahwa browser dengan label ini dijamin untuk berada dalam eksperimen.

Grup eksperimen adalah subkumpulan populasi yang sedang diteliti: dalam hal ini, salah satu grup berlabel.

Selama durasi Mode A dan Mode B, kami telah memperkenalkan nilai Cookie-Deprecation sementara yang dapat diakses menggunakan header HTTP keikutsertaan dan JavaScript API, yang memberikan label untuk grup eksperimen Mode A atau B yang berlaku pada browser (sebagaimana ditentukan oleh persentase di atas), jika termasuk dalam salah satu grup eksperimen ini.

Mengakses label melibatkan pengaksesan informasi yang disimpan di perangkat pengguna. Di beberapa wilayah hukum (seperti Uni Eropa dan Inggris Raya), kami memahami bahwa aktivitas ini mirip dengan penggunaan cookie, sehingga mengakses label mungkin memerlukan izin pengguna akhir. Sebelum mulai meminta label, sebaiknya Anda meminta saran hukum terkait apakah kewajiban izin ini berlaku untuk Anda atau tidak.

Untuk menerima header permintaan Sec-Cookie-Deprecation, situs harus menetapkan cookie receive-cookie-deprecation terlebih dahulu. Cookie ini harus menggunakan atribut Partitioned, yang berarti keikutsertaan untuk menerima header harus dilakukan per situs tingkat atas.

Misalnya, jika 3p-example.site ingin menerima header Sec-Cookie-Deprecation pada resource yang disematkan di example.com, 3p-example.site harus menetapkan cookie berikut dalam konteks tersebut.

Set-Cookie: receive-cookie-deprecation=1; Secure; HttpOnly; Path=/; SameSite=None; Partitioned;  Max-Age=15552000

Atribut cookie Secure, HttpOnly, SameSite, dan Partitioned bersifat wajib. Atribut lainnya: Domain, Path, Expires, dan Max-Age dapat ditetapkan sesuai kebutuhan Anda, meskipun Path=/ adalah default yang baik. Contoh di sini menetapkan Max-Age=15552000 sehingga masa berlaku cookie tidak akan berakhir hingga 180 hari.

Anda mungkin ingin mulai menetapkan cookie receive-cookie-deprecation=1 sebelum periode pengujian yang difasilitasi Chrome dimulai, untuk memastikan bahwa browser dalam grup eksperimen menyertakan header permintaan Sec-Cookie-Deprecation segera setelah tersedia.

Misalnya, dengan asumsi browser berada di grup example_label_1, permintaan berikutnya yang menyertakan cookie ini juga akan menyertakan header Sec-Cookie-Deprecation.

Sec-Cookie-Deprecation: example_label_1

Jika browser bukan bagian dari grup, tidak ada header yang akan dikirim. Label terikat dengan keberadaan cookie. Jadi, jika cookie dihapus, diblokir sepenuhnya, atau diblokir untuk situs tertentu, label tidak akan dikirim. Karena atribut Partitioned ditujukan untuk penggunaan berkelanjutan setelah cookie pihak ketiga sepenuhnya tidak digunakan lagi, ini berarti cookie Partitioned dapat ditetapkan saat cookie pihak ketiga diblokir.

Mengakses cookiePenghentianLabel JavaScript API

Nilai Cookie-Deprecation juga dapat diakses menggunakan navigator.cookieDeprecationLabel.getValue() JavaScript API. Tindakan ini akan menampilkan promise yang di-resolve menjadi string berisi label grup yang berlaku. Misalnya, jika browser berada di grup example_label_1:

// Feature detect temporary API first
if ('cookieDeprecationLabel' in navigator) {
 // Request value and resolve promise
 navigator.cookieDeprecationLabel.getValue().then((label) => {
   console.log(label);
   // Expected output: "example_label_1"
 });
}

Jika browser bukan bagian dari grup, API tidak akan tersedia atau nilainya akan berupa string kosong, jadi pastikan Anda melakukan deteksi fitur.

JavaScript API dapat dipanggil terlepas dari keberadaan cookie receive-cookie-deprecation. Namun, jika cookie diblokir sepenuhnya atau secara khusus untuk situs, API tidak akan tersedia lagi atau menampilkan string kosong.

Seperti halnya nilai yang diberikan klien, pastikan Anda membersihkan dan memvalidasi nilai dari header atau JavaScript API sebelum digunakan.

Demo dan pengujian

Mulai Chrome 120 dan seterusnya, terdapat flag yang tersedia untuk memungkinkan pengujian developer lokal untuk meminta dan membaca label.

Flag chrome://flags/#tpc-phase-out-facilitated-testing memungkinkan Anda mengaktifkan pemilihan label pengujian. Label ini diawali dengan fake_ untuk membedakannya dari label sebenarnya. Mengaktifkan tanda ini tidak akan menyertakan browser ke dalam grup eksperimental mana pun.

Anda dapat melihat cara kerja label ini di goo.gle/cft-demo.

Karena pendaftaran diterapkan untuk API pengukuran dan relevansi Privacy Sandbox, Anda mungkin perlu mengganti penerapan untuk pengujian lokal dengan menggunakan chrome://flags/#privacy-sandbox-enrollment-overrides dan menyediakan origin demo. Atau, sertakan tanda command line berikut jika Anda menjalankan Chrome dari terminal: --args --disable-features=EnforcePrivacySandboxAttestations

chrome://flags/#tpc-phase-out-facilitated-testing
Setelan tanda pengujian yang difasilitasi Chrome

Menu drop-down tanda mencakup beberapa opsi. Penguji akan tertarik terutama pada entri yang ditandai "Force" karena tindakan ini memastikan perilaku eksperimen diaktifkan terlepas dari konfigurasi perangkat lainnya.

Untuk menguji label grup eksperimen saja, pilih "Enabled Force Control 1" atau "Enabled Force LabelOnly". Hal ini akan menyebabkan browser mengirimkan label "fake_control_1.1" atau "fake_label_only_1.1".

Di Chrome M120 atau yang lebih baru, Anda juga dapat menggunakan entri berikut.

Untuk menguji pemblokiran cookie pihak ketiga, pilih "Aktifkan Perlakuan Paksa". Tindakan ini akan mengirimkan label grup eksperimen "fake_processing_1.1", tetapi juga mengubah halaman setelan cookie dan setelan cookie saat ini untuk memblokir cookie pihak ketiga.

Untuk menguji pemblokiran cookie pihak ketiga tanpa API iklan pribadi, pilih "Force Control 2". Tindakan ini akan mengirimkan label grup eksperimen "fake_control_2", memperbarui halaman setelan cookie, memblokir cookie pihak ketiga, dan juga menyembunyikan API iklan pribadi baru.

Perlu diperhatikan bahwa ada masalah saat browser akan tetap menggunakan halaman setelan cookie baru dan setelan yang memblokir cookie pihak ketiga meskipun Anda menonaktifkan tanda tersebut. Kami berupaya mengatasi masalah ini. Namun untuk sementara, Anda dapat menguji nilai tanda ini di direktori data Chrome yang terpisah dengan meluncurkan Chrome menggunakan tanda command line --user-data-dir=<new dir>.

Masukan

Kami menggunakan label "chrome-testing" di repositori dukungan developer di GitHub untuk mengelola pertanyaan. Kami menantikan masukan dan diskusi Anda terkait pertanyaan awal:

Anda juga dapat mengajukan pertanyaan atau diskusi baru di repositori menggunakan template "Pengujian yang difasilitasi Chrome".