3
收藏
评论

A/B测试

想知道A/B测试怎么使用吗?来看看这篇文章吧。

  • 前言

当小程序需要有两个版本或者要添加两组不同的广告时,A/B测试就可以派上用场了。可是要怎么使用AB测试呢?本文介绍使用Testin做AB测试。

  • 创建实验

  1. 在Testin云测中注册一个账号,如果已经有了,那直接登录就可以啦。
  2. 创建应用:支持多种平台的应用创建哦!记得要将关键的AppKey复制下来。
  3. 创建实验:首先选择模式,选择好模式以后就可以填写自己的实验信息了。实验名称建议是与实验内容有关的名称,这样会方便后期的使用。
  4. 填写变量:变量一定要确定了再填写,因为实验创建完成后就不能修改了(ps:可以编辑版本一的内容哦)。
  5. 编辑指标:一定要计算好自己需要多少指标,因为指标一旦建立就不能更改了~指标创建完成了就意味着实验创建完成了。
  6. 开始实验:记得要给两个版本进行流量分配哦!
  • 开发工具中使用实验

  1. 在libs文件夹中导入A/B测试对应的js文件,这个文件可以在testin网站中找到哦~然后在app.js文件中引用该js文件,并将已复制的AppKey写入页面。代码如下:
   var testinAB = require('libs/testin-ab-weapp-v3.1.1.js'); 
   var appKey = "TESTIN_wf6a6fbb8d35235";
  1. 在globalData中定义一个变量,变量名要与实验中的变量名相同。
  2. 在onLaunch()方法中调用testAB方法。以下是testAB方法的代码:
   testAB: function (cb) {
     var that = this;
     if (cb) {
       testCb = cb;
       return;
     }
     testinAB.init(appKey); //初始化
     testinAB.setDefVars({ //设置默认值
       testMoreTools: 1,
     });
     testinAB.getVars(function (vars) {
       //将实验变量testMoreTools保存到全局数据versionTest中
       that.globalData.versionTest = vars.get('testMoreTools'); 
       if (testCb) {  //testAB的回调
         testCb(); 
       }
     });
    },
  1. 在需要A/B测试的页面中获取全局变量。先在data中声明该全局变量versionTest,然后在onLoad方法中加载全局变量的值,代码如下:
   if (app.globalData.versionTest) {
      that.setData({
        versionTest: app.globalData.versionTest,
      })
    } else {
      app.testAB(function () {
        that.setData({
          versionTest: app.globalData.versionTest,
        })
      });
    }
  1. 在wxml页面根据全局变量的值选择是显示A还是B的内容。
   <view bindtap='navigateToMini'>
     <view class='detail-info' wx:if="{{versionTest == 1}}">文案A。</view>
     <view class='detail-info' wx:else>文案B。</view>
   </view>
  1. A/B测试需要一个回馈函数:testinAB.track(‘conventA’, 1);这里的conventA是在实验中创建的一个指标,testinAB会自动获取你所点击的是哪一个版本从而在相应的指标中的版本上加1。如果是跳转页面,要在track中写一个回调函数声明你要跳转的是哪个页面。如果是navigator小程序跳转就不需要了。代码如下:
   navigateToMini: function() {
     testinAB.track('conventA', 1, function () {
        window.location.href = '跳转地址'   
     });
   })
  1. 所有的步骤都完成之后就可以进行A/B测试了,如果测试成功network中会返回一个sendLog方法,如果没有,那就说明测试不可用了。

以上就是我对A/B测试的小总结,希望会对你有所帮助。

最后一次编辑于  03-18  (未经腾讯允许,不得转载)
复制链接赞 3收藏投诉评论