Пакеты тестирования Django A / B Split (ни один из них я не нашел, они хорошо документированы и актуальны.)
Существуют две основные школы мышления для выполнения A / B (сплит) тестирования:
- решения на основе Javascript, такие как Optimizely, Google Analytics Content Experiments.
- серверные решения, такие как Django-AB, Splango и django-lean. (Кроме того, пиши свои собственные.)
Я понимаю, что решения на основе Javascript эффектны для "какой цветовой кнопки преобразует лучше", но не так хороши для переключения целых макетов страниц и совершенно не работают для опробовать большие функциональные изменения, такие как последовательность страниц в воронке.
Это подводит меня к решению на стороне сервера. Я не без ума от собственного кодирования, и сделаю это только в том случае, если нет другого варианта. Я пытаюсь повысить ценность, улучшая основную функциональность моего сайта, а не создавая лучшую платформу для сплит-тестирования.
Приложения Django, которые я нашел для сплит-тестирования, представляют собой различные смеси неподдерживаемых, недокументированных, неправильно документированных и несовместимых с Джанго 1.5. Это меня удивляет, потому что сообщества Django и Python, похоже, сильно сосредоточены на хорошей документации. Я также очень удивлен, что ни один из тестовых фреймворков, которые я пробовал, не был совместим с Django 1.5 - разве тестирование не является частью философии в мире Django / Python, как это происходит в Rails?
Вот что я нашел:
-
Splango https://github.com/shimon/Splango -- не совместим с Django 1.5 (хотя большинство ошибки совместимости, которые я обнаружил, были тривиальны для исправления). В основном не трогали с октября 2010 года, за исключением исправления августа 2012 года, которое утверждает, что шаблоны будут включены в установку. Поскольку шаблоны не включаются в установку, когда Splango устанавливается через PyPI, исправление либо не сработало, либо не было отправлено в PyPI. Документация в основном точна, но не полностью описывает, как настроить тесты и получить отчеты. Он говорит вам, как настроить шаблон для сбора данных, но там, кажется, есть дополнительные шаги, необходимые в интерфейсе администратора, которые полностью не документированы, и я не уверен, что я сделал их должным образом.
-
Джанго-худой. Оригинал на https://bitbucket.org/akoha/django-lean не обновлялся с июля 2010 года. Существует, по-видимому, "благословенная" вилка в https://github.com/anandhenry2002/django-lean который не менялся с мая 2012 года, когда был скопирован с оригинала. Документация оригинала такова: неверно в том смысле, что следование этим примерам невозможно. (Хотя вы, вероятно, можете запутать свой путь, как это сделал я.) Документация новой версии имеет проблемы с форматированием, которые затрудняют чтение на github. (По-видимому, это связано с тем, что это неизмененная документация из старого проекта, а синтаксис BitBucket не работает на Github.) Группа django-lean Google не получала сообщений с июля 2012 года.
-
Django-mini-lean https://github.com/DanAncona/django-mini-lean -- Обновлено совсем недавно, в феврале 2013 года, но без документов.
-
Худощавый - https://bitbucket.org/brianjinwright/leaner -- последнее обновление в июле 2012 года, и никаких документов.
-
Django-AB -- последнее обновление май 2009. Не является пакетом и не может быть установлен через PIP или PyPI. После размещения проверки в папке приложения django (и переименования папки в ab) и следуя инструкциям по установке, я получаю сообщение об ошибке загрузка загрузчика шаблонов, который я не отследил дальше.
До сих пор Splango кажется победителем, так как я на самом деле смог заставить его более или менее работать (вручную установив шаблоны, а затем отредактировав их, чтобы исправить несовместимость Django 1.5).
Может ли кто-нибудь указать мне на то, что я пропустил?4 ответа:
Вы пропустили это приложение: https://github.com/mixcloud/django-experiments + https://github.com/disqus/gargoyle/
А еще есть вафля: http://waffle.readthedocs.org/
Он прост, обновлен, поддерживается, но не очень богат функциональными возможностями, в нем нет интегрированной аналитики/отчетности. Но опять же, google analytics или mixpanel тип сервиса лучше для этого.
Я впервые посмотрел на Django-AB, и это почти то, что я хотел, но я также не мог заставить его работать. Посмотрев на Джанго-эксперименты и решив, что пока не хочу связываться с редисом, я решил сделать свой собственный. Я попытался красиво упаковать его и сделать его простым в использовании для начинающих. Это супер основное.
Вы можете поменять местами совершенно разные макеты страниц с помощью экспериментов Google Analytics (их стандартная настройка эксперимента перенаправит пользователей на другой URL для каждого варианта, который у вас есть), хотя в целом гораздо проще интерпретировать, почему что-то более успешно, если вы тестируете меньшие вещи друг против друга.
Вы правы, что тестирование различных воронок и потоков пользователей друг против друга с помощью Google Analytics потребует Много ручной настройки; хотя теоретически вы можете сделать это, меняя местами различные ссылки и отслеживая своих пользователей с помощью кампаний UTM.
Для небольших A / B тестов на одной странице я использовал эксперименты Google Analytics и написал пользовательский плагин Django CMS для добавления нескольких вариантов опций в шаблон, который запрашивает API Google Analytics и отображает правильный вариант с помощью Javascript.