В отличие от обычного программируемого теста, в тесте с равномерным распределением варианты выдаются не случайно, а с учетом рекламного источника и устройства, с которого посетитель зашел на сайт.
Например, если пришло 10 посетителей из кампании Яндекс.Директ и 50 посетителей из кампании ВКонтакте, при равномерном распределении оба варианта теста получат по 5 посетителей из Яндекс.Директ и по 25 из ВКонтакте. Равномерное распределение позволяет сделать выборку посетителей однородной для всех вариантов и уменьшить влияние внешних факторов на результаты теста.
Перед настройкой теста установите на вашем сайте счетчик Roistat.
В разделе A/B-тестирование выберите опцию Создать программируемый тест с равномерным распределением:
Укажите название теста. Затем введите названия вариантов теста латиницей через запятую. Названия вариантов нужно будет использовать в коде сайта, чтобы сайт изменялся в зависимости от выпавшего варианта.
Обратите внимание:
После создания теста вы не сможете изменить количество вариантов и их названия.
Нажмите Создать. Вы увидите шаблон кода для теста. Скопируйте его, нажав Скопировать в буфер:
В скопированный код добавьте действия, которые должны происходить при срабатывании каждого из вариантов.
Вставьте получившийся код на ваш сайт выше кода счетчика Roistat.
Разработчик создал два альтернативных варианта верстки страницы https://site.com и разместил их по адресам https://site1.com и https://site2.com. Пользователя, который заходит на страницу https://site.com, необходимо оставить на этой странице или перенаправить на одну из тестовых страниц (в зависимости от выданного варианта).
Можно создать тест с вариантами base, first и second:
Скопированный код нужно отредактировать следующим образом:
Вариант base – это базовый вариант (страница https://site.com без изменений). Оставьте код этого варианта пустым:
<!--BEGINROISTATA/BTEST--><script>window.onRoistatModuleLoaded=function(){window.roistat.registerAbTestCallback(1,function(variant){switch(variant){case"base":// Оставляем код базового варианта пустым, чтобы показывалась та страница, на которую пользователь изначально заходилbreak;case"first":// Напишите здесь действия, которые должны происходить при выпадении варианта теста "first"// Например, чтобы переадресовать пользователя на другую страницу, раскомментируйте строку ниже и укажите там адрес страницы:// window.location.href = "https://newsitevariant.com";break;case"second":// Напишите здесь действия, которые должны происходить при выпадении варианта теста "second"// Если не нужно ничего делать, и нужно просто показать текущую страницу без изменений, то ничего добавлять сюда не нужноbreak;}});};</script><!--ENDROISTATA/BTEST-->
Вариант first – это вариант страницы, который должен открываться по адресу https://site1.com. Добавьте код, который осуществляет редирект на страницу https://site1.com при выпадении варианта first:
<!--BEGINROISTATA/BTEST--><script>window.onRoistatModuleLoaded=function(){window.roistat.registerAbTestCallback(1,function(variant){switch(variant){case"base":// Оставляем код базового варианта пустым, чтобы показывалась та страница, на которую пользователь изначально заходилbreak;case"first":// Пользователя, которому выпал вариант “first”, переадресовываем на страницу site1.com:window.location.href="https://site1.com";break;case"second":// Напишите здесь действия, которые должны происходить при выпадении варианта теста "second"// Если не нужно ничего делать, и нужно просто показать текущую страницу без изменений, то ничего добавлять сюда не нужноbreak;}});};</script><!--ENDROISTATA/BTEST-->
Вариант second – это вариант страницы, который должен открываться по адресу https://site2.com. Добавьте код, который осуществляет редирект на страницу https://site2.com при выпадении варианта second:
<!--BEGINROISTATA/BTEST--><script>window.onRoistatModuleLoaded=function(){window.roistat.registerAbTestCallback(1,function(variant){switch(variant){case"base":// Оставляем код базового варианта пустым, чтобы показывалась та страница, на которую пользователь изначально заходилbreak;case"first":// Пользователя, которому выпал вариант “first”, переадресовываем на страницу site1.com:window.location.href="https://site1.com";break;case"second":// Пользователя, которому выпал вариант “second”, переадресовываем на страницу site2.com: window.location.href="https://site2.com";break;}});};</script><!--ENDROISTATA/BTEST-->
Вставьте полученный код выше кода счетчика и запустите тест.
Как избавиться от «моргания» страницы
Иногда страница, на которую зашел пользователь, загружается до того, как пользователю выдается вариант теста. Из-за этого при получении одного из тестовых вариантов (в примере выше – first или second) и редиректе на другую страницу произойдет «моргание» (на мгновение пользователь увидит изначальную страницу).
Чтобы избежать «моргания» страницы, скройте содержимое страницы до выдачи варианта теста:
<script>// перед тем, как запросить вариант теста, скрываем содержимое страницы:document.getElementsByTagName("body").item(0).style.display="none";</script><!--BEGINROISTATA/BTEST--><script>window.onRoistatModuleLoaded=function(){window.roistat.registerAbTestCallback(1,function(variant){switch(variant){case"base":// Оставляем код базового варианта пустым, чтобы показывалась та страница, на которую пользователь изначально заходилbreak;case"first":// Пользователя, которому выпал вариант “first”, переадресовываем на страницу site1.com:window.location.href="https://site1.com";break;case"second":// Пользователя, которому выпал вариант “second”, переадресовываем на страницу site2.com: window.location.href="https://site2.com";break;}});};</script><!--ENDROISTATA/BTEST-->
Если посетителю выпал вариант base, при котором редиректа не происходит, отобразите на экране содержимое страницы:
<script>// перед тем, как запросить вариант теста, скрываем содержимое страницы:document.getElementsByTagName("body").style.display="none";</script><!--BEGINROISTATA/BTEST--><script>window.onRoistatModuleLoaded=function(){window.roistat.registerAbTestCallback(1,function(variant){switch(variant){case"base":// Оставляем код базового варианта пустым, чтобы показывалась та страница, на которую пользователь изначально заходилbreak;case"first":// Пользователя, которому выпал вариант “first”, переадресовываем на страницу site1.com:window.location.href="https://site1.com";break;case"second":// Пользователя, которому выпал вариант “second”, переадресовываем на страницу site2.com: window.location.href="https://site2.com";break;}});};// показываем контент страницы, если выдан вариант “base” без редиректаwindow.onRoistatAbTestsApplied=function(){document.getElementsByTagName("body").style.display="block";}</script><!--ENDROISTATA/BTEST-->