A/B টেস্টিং চালান

A/B পরীক্ষা চালানোর জন্য একটি শেয়ার্ড স্টোরেজ ওয়ার্কলেট ব্যবহার করুন।

শেয়ার্ড স্টোরেজ API হল সাধারণ উদ্দেশ্যে, ক্রস-সাইট স্টোরেজের জন্য একটি প্রাইভেসি স্যান্ডবক্স প্রস্তাব, যা অনেক সম্ভাব্য ব্যবহারের ক্ষেত্রে সমর্থন করে। এরকম একটি উদাহরণ হল A/B টেস্টিং, যা Chrome 104.0.5086.0 এবং পরবর্তী সংস্করণে পরীক্ষার জন্য উপলব্ধ।

আপনি একজন ব্যবহারকারীকে একটি পরীক্ষামূলক গোষ্ঠীতে নিযুক্ত করতে পারেন, তারপর সেই গোষ্ঠীটিকে শেয়ার্ড স্টোরেজে সংরক্ষণ করতে পারেন যাতে একটি ক্রস-সাইট পরিবেশে অ্যাক্সেস করা যায়।

A/B পরীক্ষা করে দেখুন

শেয়ার্ড স্টোরেজের সাথে A/B পরীক্ষার পরীক্ষা করতে, নিশ্চিত করুন যে আপনি Chrome 104.0.5086.0 বা তার পরবর্তী সংস্করণ ব্যবহার করছেন। chrome://settings/adPrivacy এর অধীনে সমস্ত বিজ্ঞাপন গোপনীয়তা API সক্ষম করুন।

আপনি কমান্ড লাইনে --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames ফ্ল্যাগ ব্যবহার করেও Shared Storage সক্ষম করতে পারেন।

কোড নমুনা নিয়ে পরীক্ষা-নিরীক্ষা করুন

কোনও পরীক্ষার কাঙ্ক্ষিত প্রভাব আছে কিনা তা দেখার জন্য, আপনি একাধিক সাইট জুড়ে A/B পরীক্ষা চালাতে পারেন। একজন বিজ্ঞাপনদাতা বা কন্টেন্ট প্রযোজক হিসেবে, ব্যবহারকারীকে কোন গ্রুপে নিযুক্ত করা হয়েছে তার উপর ভিত্তি করে আপনি বিভিন্ন কন্টেন্ট বা বিজ্ঞাপন রেন্ডার করতে পারেন। গ্রুপ অ্যাসাইনমেন্টটি শেয়ার্ড স্টোরেজে সংরক্ষিত থাকে, কিন্তু এক্সফিল্টার করা যায় না।

এই উদাহরণে:

  • ab-testing.js একটি ফ্রেমে এমবেড করা উচিত, যা একটি নিয়ন্ত্রণ এবং দুটি পরীক্ষার বিষয়বস্তু ম্যাপ করে। স্ক্রিপ্টটি পরীক্ষার জন্য শেয়ার্ড স্টোরেজ ওয়ার্কলেটকে কল করে।
  • ab-testing-worklet.js হল শেয়ার্ড স্টোরেজ ওয়ার্কলেট যা ব্যবহারকারীকে কোন গ্রুপে নিযুক্ত করা হয়েছে তা ফেরত দেয়, কোন বিজ্ঞাপন দেখানো হবে তা নির্ধারণ করে।

ab-testing.js সম্পর্কে

// Randomly assigns a user to a group 0 or 1
function getExperimentGroup() {
  return Math.round(Math.random());
}

async function injectContent() {
  // Register the Shared Storage worklet
  await window.sharedStorage.worklet.addModule('ab-testing-worklet.js');

  // Assign user to a random group (0 or 1) and store it in Shared Storage
  window.sharedStorage.set('ab-testing-group', getExperimentGroup(), {
    ignoreIfPresent: true,
  });

  // Run the URL selection operation
  const fencedFrameConfig = await window.sharedStorage.selectURL(
    'ab-testing',
    [
      { url: `https://your-server.example/content/default-content.html` },
      { url: `https://your-server.example/content/experiment-content-a.html` }
    ],
    {
      resolveToConfig: true
    }
  );

  // Render the chosen URL into a fenced frame
  document.getElementById('content-slot').config = fencedFrameConfig;
}

injectContent();

ab-testing-worklet.js সম্পর্কে

class SelectURLOperation {
  async run(urls, data) {
    // Read the user's experiment group from Shared Storage
    const experimentGroup = await sharedStorage.get('ab-testing-group');

    // Return the corresponding URL (first or second item in the array)
    return urls.indexOf(experimentGroup);
  }
}

register('ab-testing', SelectURLOperation);

কেস ব্যবহার করুন

সিলেক্ট ইউআরএল এপিআই-এর জন্য সমস্ত উপলব্ধ ব্যবহারের ক্ষেত্রে এই বিভাগে পাওয়া যাবে। আমরা প্রতিক্রিয়া পেতে এবং নতুন পরীক্ষার কেস আবিষ্কার করার সাথে সাথে আমরা উদাহরণ যোগ করা চালিয়ে যাব।

অংশগ্রহণ করুন এবং মতামত শেয়ার করুন

মনে রাখবেন যে Select URL API প্রস্তাবটি সক্রিয় আলোচনা এবং উন্নয়নাধীন এবং পরিবর্তন সাপেক্ষে।

আমরা Select URL API সম্পর্কে আপনার মতামত শুনতে আগ্রহী।