29

asp.net mvcでABテストを実装するための最良かつ最もクリーンな方法は何ですか?つまり、asp.net mvc Webサイトに新しい変更を加える場合、訪問者の特定のサブセット(Cookie、ログインIDなどで定義)を使用して新しいhtml / css / jsをテストし、いくつかのメトリックを分析します(その後、ページの応答時間、アクセスしたページ数、売上高の$$$など)、変更の成功レベルを測定します。

asp.net mvcを使用してレンダリングするビュー(html / css / jsなど)を選択する方法を実装するためのクリーンな方法を探しています。

4

6 に答える 6

14

FairlyCertain ( _http://www.fairtutor.com/fairlycertain/)機会があれば。これは .NET A/B ライブラリであり、プロジェクトにドロップしてテストを書き始めることができます。

Google や VisualWebsiteOptimizer の Javascript ライブラリとは異なり、すべてがサーバー上で行われるため、パフォーマンス、ユーザー エクスペリエンス、または SEO の問題に悩まされることはありません。私はしばらくの間自分のものでそれを使用してきましたが、それは非常にうまく機能します.

于 2010-11-05T09:59:10.463 に答える
5

ASP.NET MVC 専用のA/B テスト フレームワークがあります。これは、あなたと同じように、ASP.NET MVC で適切に動作し、多くのセットアップを必要としない無料のツールが見つからなかったときに、私が自分で作成したオープン ソース ソフトウェアです。

于 2014-04-09T23:54:07.347 に答える
3

Google コンテンツ エクスペリメント? これは、バックエンドから何も必要としない Javascript ベースのソリューションです。

  1. ページに Google の Javascript を含める
  2. スクリプトは、A/B テストで定義されたページの要素をランダムに置き換えます
  3. Google のサイトには、結果のすばらしい内訳が示されています...
于 2009-09-24T15:57:13.443 に答える
2

Spark ビュー エンジンを使用している場合は、おそらくテーマ フィルターのバリエーションを使用できます ( http://sparkviewengine.com/documentation/viewlocations#Extendingfilepatternswithdescriptorfilters )。サイトへの新しい訪問者ごとに、サイトの既存のバージョンまたは新しいバージョンを表示するかどうかを決定し、Cookie を設定します。Cookie の存在を検索する記述子フィルターを接続し、ビューの場所を変更して、変更されたビューを含むフォルダーを検索します。代替ビューが存在する場合、Spark エンジンはそれを「通常の」ビューの代わりに自動的にレンダリングします。それ以外の場合は、通常のビューをレンダリングします。

通常の WFVE を使用している場合、これを管理する最も簡単な方法は、ビューの代替が存在するビューの下にフォルダーを定義することです。代替ビューを提供する場合は、通常の Views フォルダー内の位置と一致するが、alternatives フォルダーをルートとする場所に配置します。たとえば、Views/Users/login.aspx の代替を提供するには、新しいビューを Views/ に配置します。代替/ユーザー/login.aspx。

代替ビューを見つけるための規則が整っていれば、WebFormViewEngine を拡張し、CreatePartialView / CreateView をオーバーロードして、ControllerContext の一部の側面を調べて、デフォルトまたはオーバーロードされたビューをレンダリングするかどうかを判断し、必要に応じてパスを変更することができます。 Views/Users/login.aspx から .../Views/Alternative/Users/login.aspx へ。

于 2009-10-08T21:22:06.530 に答える
-1

これにはすぐに使用できるソリューションはなく、即興で対応する必要があると思います。

現在の機能を壊すことなく、明確に定義されたポイントでオーバーライドしてみてください。通常のコードと AB テスト コードが存在する境界線を明示的に描画します。

ここでも、制御原理の反転が大いに役立つ可能性があります (つまり、コントローラー ファクトリは、元のコントローラーの代わりに派生コントローラーを提供できます)。ビューと部分ビューの場合 - ビューエンジンを変更して、「MyPartialView.ascx」ではなく「MyPartialViewAB.ascx」を検索しようとするようにすることができます。

また、パフォーマンス カウンターとは何かを確認することをお勧めします (まだ行っていない場合)。

于 2009-09-24T07:20:35.513 に答える