在上篇博客中,我们介绍了sixpack的安装,在安装好后,我们再接再厉,试试一个官网提供的小例子,结合例子,大家再体会下第一篇博客中介绍的A/B测试流程:
博客链接:提升用户体验(1)——简介A/B测试(sixpack)
1,下载客户端
https://github.com/seatgeek/sixpack-js
2,安装note.js环境
按照官网要求就好:
https://nodejs.org/en/
3,改造sixpack.js
将地址改为自己的sixpack服务地址
1,返回数据格式
选择了方案1
方案1被推送1此
单击按钮,接受方案1:
方案1被共推送一次,接受一次
方案2类似:
测试过程:
2,某测试胜出
只会返回一种结果:
在使用过程中,我们会遇到很多问题,比如note.js的安装,数据无法正常返回,这时候,大家去官网,仔细阅读步骤,就可以知道,英文是多么重要的一个工具,而且sixpack几乎没有中文资料,为了未来,我和大家英文都要努力啊!
sixpack也有缺点,有几个缺点,暂时没有更好的方案解决:
1,不能精确控制某个方案的投放比例,现在貌似投放比例是均衡投放
2,不能显示,都是谁选择了哪些方案,不能做用户行为分析
3,重新启动之后,无法还原数据(貌似是一次性的)
无论如何,sixpack帮助我们节省了很多的操作,是个非常优秀的测试框架
附录:index.html
<span style="font-size:18px;"><html> <head> <script src="../../sixpack.js" type="text/javascript"></script> <script src="../../jquery-1.9.1.js" type="text/javascript"></script> <script type="text/javascript"> var now_time_ex = new Date().getTime(); var session = new sixpack.Session({client_id:now_time_ex}); function participate() { session.participate("test-exp", ["alt-one", "alt-two"],function (err, res) { if (err) throw err; document.getElementById("participate").innerHTML = JSON.stringify(res); if(res.alternative.name == "alt-one"){ $("#button_covert").css("background","red"); }else{ $("#button_covert").css("background","blue"); } }); } function convert() { session.convert("test-exp", function (err, res) { if (err) throw err; document.getElementById("convert").innerHTML = JSON.stringify(res); }); } </script> </head> <body onload="participate();"> <h1>Sixpack</h1> <p>Response for participate:</p> <code><pre id="participate"></pre></code> <p>Response for convert:</p> <code><pre id="convert"></pre></code> <button id='button_covert' style='width:100px;height:30px;' onClick="convert();">Convert!</button> </body> </html> </span>