1. 概述

指通过代码编程的 A/B试验。广泛应用于客户端和服务端试验,覆盖产品功能、UI样式和后端算法优化等多种试验场景。

应用接入:需集成 A/B Testing SDK 开启使用,详情参见:SDK 集成指南

2. 新建试验

在试验列表中,点击“+新建”按钮,进入试验创建页面。

2.1. 基本信息

名称

必填,试验名称不可重复。长度不超过40字,只能包含中文、英文、数字和下划线,不支持特殊字符。

备注

选填,用于描述相关试验信息。长度不超过300字,只能包含中文、英文、数字和下划线,不支持特殊字符。

2.2. 配置关注指标

核心指标

核心指标,也被称作成功指标、北极星指标。一个试验必须设置一个核心指标,用于直接评价试验运行效果。例如在某个购物车支付按钮文案的优化试验中,按钮点击率可以作为试验的核心指标。

在神策A/B测试中,允许将人均值类、次均值类和 事件A/事件B类型的自定义指标 设置为核心指标。

PV、UV类指标往往随参与试验的人数而变化,并不能准确的衡量试验效果,因此不能被设置为核心指标。


关注指标

除了核心指标,我们还需要引入一些其他的追踪指标,用于从多个角度评估试验运行效果,来综合判断试验究竟是否成功。在一个试验中,最多支持设置10个关注指标。关注指标会在试验报告中进行数据统计。

留存指标

在神策A/B测试中,默认预置了留存指标,用于评价试验组和对照组用户的留存数据对比。支持客户自定义设置留存行为。

2.3. 设置试验分组

试验分组

可以根据业务和试验情况合理规划试验分组数量,对照组+试验组的数量不超过 10 个。分组名称支持重命名,支持中文、英文和数字,不支持特殊字符,长度最多支持20个字符。

分配方式

为试验分组分类参与试验的流量比例。

  • 平均分配:将 100% 的流量均匀自动分配到每个组。
  • 手动分配:手动分配每个分组的流量,流量总和为100%。

描述信息

描述信息支持文字和图片两种形式。

  • 文字备注:支持输入中文、英文和数字,不支持特殊字符,文本长度最多支持300个字符。
  • 图片备注:支持jpg、jpeg、gif、png格式,大小不超过100k。

试验参数

用户在A/B测试平台运行试验时,试验的策略通过参数进行下发到对应的应用端,不同的参数对应不同的功能或者业务策略。一般在应用发版前,需要根据规划的试验策略将参数提前预置到应用代码中,即可在A/B测试平台使用对应的参数来创建并运行试验。

目前支持的参数类型:integer、string、boolean和json,一个试验支持配置多个参数进行试验变量控制。

调试设备

调试设备用于测试试验分组的策略是否正确被下发,一旦设备被加入对应的试验分组,将固定命中当前的分组策略。一个调试设备只能被添加到试验的一个分组中,但不受试验层策略的影响。

添加调试设备:可以选择已添加到设备列表的设备或临时新建设备。详情参见:调试设备管理

2.4. 选取受众用户

2.4.1. 选择试验层

为试验选择一个试验层,在同一层的试验流量互斥,同一个用户进入试验层时只能命中该试验层中的一个试验,以保证试验间互不干扰。建议提前根据业务情况规划试验层。详情参考:试验层管理

试验层选择弹窗支持模糊搜索、快速新建试验层以及查看试验层详情操作。

2.4.2. 选择受众用户

从分群选择:选择在神策分析和神策用户画像产品中创建的用户分群作为试验目标受众。

  1. 试验上线后,受众用户随当前分群的更新而自动更新。
  2. 在分群更新前已经命中试验的用户,即使更新后不在分群内,也仍将保持命中试验;新加入分群的用户,将会参与试验分流。

随机流量:以当日活跃用户作为目标受众。支持按照用户属性、预置属性和自定义属性进行筛选。

(1)用户属性:支持订阅神策分析中用户表的全部用户属性作为目标受众筛选条件。

(2)预置属性:在请求分流接口时,SDK默认采集的属性。支持的属性列表:

       "$app_version":"v1.2",          // 应用的版本
        "$os":"iOS",                    // 操作系统
        "$os_version":"11",             // 操作系统版本
        "$model": "xxx",               // 设备型号
        "$manufacturer": "xxx",         // 设备制造商
        "$carrier":"xxx",               // 运营商名称
        "$device_id":"xxx",             // 设备 ID
        "$country":"中国",               // 国家
        "$province":"山东",              // 省份
        "$city":"青岛",                  // 城市
       "$ip":"10.10.22.33"             // IP 地址
       "$is_first_day":true / false  // 是否首日(boolean 类型,新老用户功能新增)
CODE

(3)自定义属性:在请求分流接口时,通过接口“properties”字段将自定义属性主动上传,用于作为分流属性筛选。

a.自定义属性支持的数据类型:字符串(STRING)、字符串数组(LIST)、数值(NUMBER)、布尔(BOOL)和 日期时间(DATATIME)

b.属性名校验规则:支持英文、数字、下划线,且不能以数字和"$"开头。

  1. 该功能为高级功能,请联系客户成功经理申请开通
  2. 当前仅编程试验支持自定义筛选
  3. 当前 Android SDK、iOS SDK 和 Java SDK 支持自定义属性,其他 SDK 正在陆续支持中
  4. 支持在 fetchCacheABTest 接口和 asyncFetchABTest 接口使用自定义属性
  5. 在使用自定义属性功能时,需确保 SDK 接口中定义的属性名与A/B平台填写的属性名保持一致(包括属性名和数据类型)

2.4.3. 进组比例

在选取的受众用户范围内,设置总共能参与试验的用户比例。试验上线初期一般选择小部分流量进行试验,后续再根据试验数据反馈酌情调整。

试验可设置的最大进组比例为当前试验层剩余的流量比例


2.5. 示例代码

在完成创建试验后,试验进入「调试中」状态,此时会根据试验参数生成对应的示例代码,开发人员将代码嵌入到应用中实现对应的试验策略。

3. 调试试验

在应用完成试验策略的集成和发版后,使用已经录入的调试设备访问试验页面,即可查看试验策略是否被正确下发。当试验状态为「调试中」时,调试设备会被强制分配到已经配置好的试验分组内,可以使用调试设备验证试验分流结果。

4. 上线试验


试验调试完成后,在试验列表点击「上线」操作,即可上线试验。此时目标试验用户开始进入试验,试验报告会进行实时统计数据