Оптимизация приложения с помощью сравнительного тестирования

Сравнительное тестирование позволяет проверять изменения в приложении на выборке пользователей, чтобы найти оптимальный вариант, который потом будет предложен всем клиентам.

Зачем это нужно

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

Как это сделать

  • Выберите подходящую платформу для сравнительного тестирования, например Firebase Remote Config с Firebase Analytics и таргетингом на произвольную выборку или Google Analytics с Google Tag Manager, и интегрируйте ее в свое приложение.
  • Выберите функцию или варианты контента, которые нужно протестировать, и критерии оценки результатов.
  • Выберите контент или функции, которые будут предложены контрольной и тестовой группе, следуя рекомендациям ниже.
Сценарий Пример тестируемого изменения Что видят пользователи, не участвующие в тестировании Вариант А Вариант Б Варианты В, Г и т. д. (необязательно)
Новая реализация существующей функции Для навигации служат не вкладки, а элементы в нижней части экрана Существующую реализацию:
вкладки
Существующая реализация:
вкладки
Реализация новой функции:
навигация внизу экрана
Реализация дополнительной функции:
выдвигающаяся панель
Новая функция, для которой используется новый показатель Сортировка покупок по популярности, а не по цене, чтобы повысить доход Новые функции недоступны:
покупки в приложении не включены
Реализация новой функции 1:
покупки в приложении упорядочены по популярности
Реализация новой функции 2:
покупки в приложении упорядочены по цене
Реализация дополнительной функции:
покупки в приложении упорядочены по алфавиту
Новая функция, для которой используется существующий показатель Возможность помечать товары, чтобы повысить вовлечение Новые функции недоступны:
помечать товары нельзя
Новые функции недоступны:
помечать товары нельзя
Реализация новой функции:
помечать товары можно значком сердца
Реализация дополнительной функции:
помечать товары можно звездочкой
  • Укажите размер выборки или продолжительность эксперимента в зависимости от возможностей выбранной вами платформы для сравнительного тестирования. Экспериментальная группа должна насчитывать не менее 1000 пользователей.
  • Запустите тестирование.
  • Проанализируйте результаты тестирования, чтобы определить их статистическую значимость и понять, как повлияли внесенные изменения на эффективность приложения.
  • Реализуйте наиболее успешный вариант в финальной версии приложения.

Рекомендации

  • Выбирайте платформу, которая позволит провести тестирование в нужных масштабах. По мере развития вашей компании и с выпуском новых версий приложения вам, возможно, понадобится чаще проводить сравнительное тестирование. Убедитесь, что выбранная платформа позволяет запускать сразу несколько тестов на одной выборке пользователей. Желательно, чтобы при этом один и тот же пользователь мог одновременно участвовать в нескольких экспериментах.
  • Тестируйте нужно количество вариантов. Если вы хотите проверить несколько альтернативных функций или изменений в контенте, включайте их все в эксперимент. Пробуйте разные сочетания вариантов, например:
Текст кнопки (параметр 2)
Купить В корзину
Цвет кнопки (параметр 1) Синий Вариант А Вариант Б
Зеленый Вариант В Вариант Г
  • Тестирование нужно проводить достаточно долго, чтобы исключить всяческие колебания: поведение пользователей может меняться с различной периодичностью (каждый час, день, неделю и т. д.). Учитывайте это, когда задаете продолжительность эксперимента. Если циклы в поведении достаточно долгие, тогда имеет смысл сократить время тестирования и экстраполировать результаты.
  • Учитывайте отличия между разными сегментами пользователей. Если вы считаете, что поведение пользователей из разных сегментов отличается, проводите тестирование в одном сегменте или убедитесь, что ваша выборка достаточно репрезентативна. Например, если доход пользователя зависит от страны, ограничьтесь одной страной или выборкой из всех стран.
  • Проводите тестирование на нескольких сегментах. Если у вас есть устоявшиеся, хорошо опробованные сегменты (например, "Страна", "Источник трафика" и т. п.), попробуйте сравнить результаты тестирования по ним. Затем вы можете внедрить изменения только для некоторых сегментов, либо предложить разным сегментам разные варианты обновления.
  • Выбирая продолжительность тестирования, учитывайте выгоду для своего бизнеса. Прежде чем определиться с длительностью эксперимента или размером тестовой группы (а от последнего зависит продолжительность: чем больше пользователей, тем больше времени нужно для тестирования), подумайте, не окажется ли короткий эксперимент более выгодным для вашей компании (за счет более быстрого внедрения улучшений).
  • В ходе тестирования будьте готовы к непредвиденным отрицательным результатам и досрочному прекращению эксперимента. Даже если в нем задействован небольшой процент ваших пользователей, плохие результаты могут негативно сказаться на ваших рейтингах и отзывах о приложении (в том числе в социальных сетях).
  • Внедряйте изменения постепенно, если это позволяет ваша платформа. Даже если тестирование прошло успешно, результаты полномасштабного внедрения изменений могут отличаться от экспериментальных. Постепенная реализация дает возможность лучше отслеживать изменения и быстро отменить обновления, если они не дали ожидаемого эффекта.
  • Исключайте из тестирования пользователей, включивших новые функции. Если вы предоставили своим клиентам возможность самостоятельно активировать новые возможности приложения, исключите их из тестирования.