Что лучший/самый чистый путь состоит в том, чтобы реализовать A-B, тестирующий в asp.net mvc?

Если Вы использовали *, как будто отклоняют инструменты:

find . -type d -name .svn -print0 | xargs -0 rm -fr
28
задан Agent_9191 13 October 2009 в 21:48
поделиться

3 ответа

Эксперименты с содержанием Google ? Это решение на основе Javascript, которое ничего не требует от вашей серверной части.

  1. Вы включаете Javascript Google на свою страницу
  2. Сценарий случайным образом заменяет элементы на вашей странице, как это определено вашим A / B-тестом
  3. Сайт Google показывает красивую разбивку результатов ...
3
ответ дан 28 November 2019 в 03:51
поделиться

Думаю, для этого нет готового решения, и вам придется импровизировать.

Попытайтесь переопределить текущую функциональность в четко определенных точках, не нарушая ее. Явно нарисуйте границу, где живет ваш обычный код и код тестирования AB.

Здесь также может помочь инверсия принципа управления (т. Е. Фабрика контроллеров может предоставить производный контроллер вместо исходного). Для представлений и частичных представлений - вы можете изменить viewengine, чтобы он пытался искать «MyPartialViewAB.ascx» вместо «MyPartialView.ascx».

И было бы неплохо посмотреть, что счетчики производительности есть (если нет).

-1
ответ дан 28 November 2019 в 03:51
поделиться

Если вы используете движок искрового просмотра, вы, вероятно, могли бы сделать это с помощью варианта фильтра тем ( http://sparkviewengine.com/documentation/viewlocations#Exndingfilepatternswithdescriptorfilters ). Для каждого нового посетителя сайта определите, хотите ли вы, чтобы он видел существующую или новую версию сайта, и установите файл cookie. Подключите дескрипторный фильтр, который проверяет наличие cookie-файла, и измените местоположение представления, чтобы искать в папке, содержащей измененные представления. Если существует альтернативное представление, движок Spark автоматически отобразит его вместо «обычного» представления, в противном случае он будет отображать нормальный вид.

Если вы используете обычный WFVE, тогда самый простой способ управлять этим - определить папку в разделе "Просмотры", в которой находятся ваши альтернативы представлений. Если вы хотите предоставить альтернативное представление, вы размещаете его в месте, которое соответствует его положению в обычной папке Views, но с корнем в папке альтернатив, например, чтобы предоставить альтернативу Views / Users / login.aspx, поместите новое представление в Views / Альтернатива / Users / login.aspx.

Имея соглашение о расположении альтернативных представлений, вы можете расширить WebFormViewEngine и перегрузить CreatePartialView / CreateView, чтобы проверить некоторые аспекты ControllerContext, чтобы определить, отображать ли представление по умолчанию или перегруженное представление и измените путь соответствующим образом, например, изменив ... / Views / Users / login.aspx на ... / Views / Alternative / Users / login.aspx.

2
ответ дан 28 November 2019 в 03:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: