Skip to main content

Типы экспериментов

Sigma позволяет запускать эксперименты на основе трех типов:

  • Параметр. Вы можете установить значение, которое будет присвоено пользователю, в зависимости от его группы. Например, False для контрольной, True для тестовой.
  • Фича флаг. Обладает тем же, что и параметр, но удобнее для разработки, которая может использовать ранее использованные фича флаги (с использованием checkFlag). К тому же, вы можете установить дополнительные правила на каждую группу эксперимента (например, версия приложения)
  • Переадресация. Назначение URL каждой группе. Если пользователь попал на страницу, которую вы хотели бы протестировать, то будет осуществлена переадресация на новую.

Параметры

Что это

Эксперимент на основе параметра – самый простой тип эксперимента в Sigma. У параметра есть 3 типа значений, которые назначаются группе:

  • Bool
  • Number (float)
  • String
  • Json

Как это работает

  • Для работы с параметрами используется метод getParamValue
  • В зависимости от полученной группы, пользователю будет возвращено то или иное значение заданного типа
  • У параметра нет возможности накладывать дополнительные правила для присвоения значений

Фича флаги

Что это

Фича флаги позволяют гибко подходить к процессу разработки и запуска экспериментов. Разработчик может установить проверку фича флага, а затем в любой момент включить эксперимент.

Фича флаги могут существовать самостоятельно без экспериментов. Вы в любой момент можете их запустить или гибко настроить правила присвоения значений, исходя из задачи.

Так же как и у параметров, у фича флагов поддерживаются 3 типа значений: Bool, Number, String

Как это работает

  • Для работы с фича флагами используются методы getFeatureValue и checkFlag
  • Метод getFeatureValue имеет строгую привязку к эксперименту, а checkFlag нет
  • В зависимости от полученной группы, пользователю будет возвращено то или иное значение заданного типа. Если используется checkFlag, тогда помимо проверки эксперимента, будет осуществлена проверка правил вне его
  • У фича флага есть возможность накладывать дополнительные правила для присвоения значений, в зависимости от назначенной группы

Переадресация

image

Что это

Переадресация позволяет запускать эксперименты, где каждому варианту назначен определенный URL.

Как это работает

  • Для работы с переадресацией используется метод userSplitUrl()
  • SDK получает текущий url на котором сейчас пользователь, разбирает его (домен, полный путь, query-параметры)
  • Осуществляется определение группы, затем определение url и переадресация на полученную страницу

Пример

Мы хотим протестировать страницу каталога /catalog. Разработчик подготовил альтернативную версию страницы и разместил ее на /new-catalog. Мы можем назначить правило, которое будет проверять перешел ли пользователь на страницу каталога. Если он попал в контрольную группу, тогда переадресации не будет и он останется на странице /catalog. Но если бы он попал в тестовую группу, тогда его автоматически бы переадресовало бы на /new-catalog