1

新的GAE traffic splitting功能今天發佈,它的一個預期用途是多變量測試。這似乎意味着您必須構建和部署應用程序的多個版本,每個版本都針對測試的每個變體,這意味着您已經分支了版本控制系統(每個測試只有一個分支)。這似乎是管理測試的一種低效方式。它似乎沒有包含任何類型的管理測試框架,不像Google's Website Optimizer,其中包括用於管理多個測試的用戶界面,還包括所有統計收集和分析工具。你如何使用GAE流量分割進行多變量測試?

有人想過使用新的流量分割功能進行多變量測試嗎?爲什麼使用網站優化工具?您將如何設置流量分割測試 - 您是否會分支您的版本控制系統,並編寫自己的基礎設施來測量和分析測試?或者,而不是編寫自己的代碼,是否有一個多變量測試庫可以用於此目的?

回答

1

您選擇已部署應用程序的版本之間的流量拆分,而不一定是版本控制中的不同修訂版本。如果有的話,每個版本中的代碼並不一定非常不同。在java中,你可以在appengine-web.xml中定義版本。

舉例來說,如果您想運行簡單的A-B測試,將您網站的某個版本與廣告進行比較,而不是對比一個。您可能正在尋找對跳出率,加載時間,廣告效果等方面的影響。在代碼中,你可以只包在一個代碼塊的廣告代碼顯示帶有標誌,如:

if (ADS_ON) { 
    // display ad... 
} 

您的應用程序版本爲「廣告式」,並設置ADS_ON設置爲true和部署。然後,您可以將應用程序版本設置爲「ads-off」,並將ADS_ON設置爲false並重新部署。

現在我已經輸入了,是的,我同意它有點笨拙,但是這個新功能仍然允許你去做你以前不能做的事情。您將能夠查看每個版本的appengine儀表板,並比較它們如何消耗資源。

如果你想測試兩個完全不同的實現的運行成本,那麼在你的版本控制中有兩個分支是有意義的。