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仪表板,并比较它们如何消耗资源。

如果你想测试两个完全不同的实现的运行成本,那么在你的版本控制中有两个分支是有意义的。