2011-09-13 1 views
6

Я ищу простой способ интеграции тестирования split в мое приложение Rails 3. Я исследовал и нашел две альтернативы, которые, кажется, быть в курсе для Rails 3 ...Rails 3 A/B сплит-система без Redis?

суете http://vanity.labnotes.org

Split: https://github.com/andrew/split

Однако оба они используют Redis, что мой работодатель не хочет использовать. Я замечаю, что Vanity можно использовать с ActiveRecord, но мне было интересно, есть ли у кого-нибудь опыт настройки системы A/B Split Test без использования Redis и какую конфигурацию вы бы порекомендовали?

+0

вы нашли ответ у меня есть такая же проблема :( – Naveed

+0

я работаю добавив несколько адаптеров базы данных для разделения, вы можете следить за ходом работы здесь: https://github.com/andrew/split/issues/37 –

+0

https://www.ruby-toolbox.com/categories/A_B_Testing – Chloe

ответ

1

Вы можете посмотреть плагин A/Bingo. Он использует ActiveRecord, и есть RailsCasts episode о том, как его настроить и использовать.

3

У меня нет опыта работы с Split, но у меня есть настройка тщеславия без Redis. Способ сделать это, чтобы добавить следующую строку в ваш конфигурационный/окружающей среды/development.rb

Vanity.playground.establish_connection :development 

Затем создайте файл с именем vanity.yml под конфиг/и добавить следующее:

development: 
    adapter: active_record 
    active_record_adapter: mysql 
    host: localhost 
    database: database_name 
    username: mysql_username 
    password: mysql_password 
0

Для тех из вас, кто ищет простое в использовании легкое решение для тестирования разделов и дыма, я разработал жемчужину eeny-meeny. Это не требует, чтобы вы использовали Redis или что-то в этом роде. Он построен как промежуточное ПО стойки и обрабатывает все на основе файлов cookie.

Все, что вам нужно использовать это, чтобы определить эксперимент (ы) и использовать эксперимент хелперы, где вы нуждаетесь в них:

if participates_in?(:my_experiment, variation_id: :my_variation) 
    # variation specific code 
else 
    # normal code 
end 

if smoke_test?(:my_secret_test) 
    # smoke test specific code 
else 
    # normal code 
end