微信小程序AB测试指南

创建优化方案

在云眼控制台界面,点击创建优化方案,选择 全栈API

云眼AB测试

创建完成后,点击编辑选项,设置目标并添加到优化方案

云眼AB测试

云眼AB测试

SDK下载与安装

使用云眼全栈API可以在微信小程序上进行AB测试,首先需要点击控制台界面中的SDK下载链接。

小程序AB测试SDK下载

在“SDK下载与安装”页面,选择“全栈API SDK安装”->“微信小程”,然后获取最新的小程序SDK。

云眼AB测试

 

SDK引入

在微信开发工具中,将SDK文件放到根目录下。

云眼AB测试

在app.js文件头部添加一行代码引入SDK。

var eyeofcloud = require('eyeofcloud.min.js');

为了保证SDK的网络请求能够正常发送,需要在小程序的开发设置中将 https://cdn.eyeofcloud.com 和 https://tracker.eyeofcloud.net 添加到request合法域名中。

然后在APP方法中的globalData变量中添加eyeofcloud,我们会把创建好的eyeofcloud对象保存在这个全局变量中,方便之后其他代码调用。

globalData: {
    userInfo: null,
    eyeofcloud: null
}

在APP方法中实现一个方法getEyeofcloud,其他代码直接调用该方法获取eyeofcloud对象。

getEyeofcloud: function (cb) {
    var that = this
    if (this.globalData.eyeofcloud) {
        typeof cb == "function" && cb(this.globalData.eyeofcloud)
    } else {
        //调用网络请求接口
        wx.request({
            url:"your-config-url",
            success: function (res) {
                that.globalData.eyeofcloud = eyeofcloudClient.createInstance({datafile:res.data})
                typeof cb == "function" && cb(that.globalData.eyeofcloud)
            }
        })
    }
}

如果你的app.js文件中没有getuserInfo方法,添加如下代码:

getUserInfo: function (cb) {
    var that = this;
    if (this.globalData.userInfo) {
      typeof cb == "function" && cb(this.globalData.userInfo)
    } else {
      //调用登录接口
      wx.login({
        success: function () {
          wx.getUserInfo({
            success: function (res) {
              that.globalData.userInfo = res.userInfo;
              typeof cb == "function" && cb(that.globalData.userInfo)
            }
          })
        }
      });
    }
  }

AB测试实施代码

到这里,SDK的初始化工作就已经完成了。然后我们来看下如何启动实验并触发目标。我们找到需要进行实验的页面,就可以在Page构造方法的onLoad方法中添加一些代码,调用云眼SDK的activate方法会激活试验并得到对应的版本名称,根据名称对界面做出不同的修改。activate接受两个参数,试验名称和用户名。用户名应当唯一,可以使用unionID。

onLoad: function () {

    console.log('onLoad');
    var that = this
    //调用应用实例的方法获取全局数据
    app.getUserInfo(function (userInfo) {
      app.getEyeofcloud(function (eyeofcloud) {
        var varation = eyeofcloud.activate('电商小程序', userInfo.nickName) === "优化版本" ? "优化版本" : "原始版本"
        if (varation == "优化版本"){
          that.setData({
            userInfo: userInfo,
            motto: "优化版本",
            smb:true
          })
        } else if (varation == "原始版本"){
          that.setData({
            userInfo: userInfo,
            motto: "原始版本",
            smb: false
          })
        }        
      })
    })
  }

云眼AB测试云眼AB测试

 

找到用户点击购买后的跳转页面,调用云眼API的track方法就可以触发目标了,在页面的onLoad方法中添加代码,其中track方法接受两个参数,目标名称和用户名。用户名需要和启动试验的用户名一致。

onLoad: function () {
    app.getUserInfo(function(userInfo){
        app.getEyeofcloud(function (eyeofcloud) {
            eyeofcloud.track('商城', userInfo.nickName)
        })
    })
}

到云眼控制台的访客日志中查看记录,确认SDK工作正常。

云眼AB测试

 

 

免费试用,转化率提升就是这样简单快速 立即试用