如下图所示,数据对接分为阶段一测试、阶段二测试 2 个阶段,每轮测试自提交后需等待 0.5 工作日。开发者提升送测数据质量是缩短接入开发时长的有效手段。

dev_process_test_1

本文将重点介绍阶段一和阶段二测试的测试点。



# 阶段一测试

测试数据送测试环境:是指开发者在测试环境下,传输测试数据到测试环境。

Tapd 起点状态:开发完成

Tapd 过程状态:测试数据测试中

Tapd 终点状态:测试数据测试通过


# 测试点示例

# 前端

# 公共问题

  • “必填”中标记“C”,是”conditional“的缩写,含义为条件必填,具体的条件请见文档中的”描述“中关于”若填写了xx则必填“的文字
  • 前端 SDK 预置上报的“小程序启动”、“小程序显示”和“小程序隐藏”自动通过
  • 前端 除部分行为可能产生无法获得 open_idpagechan_wxapp_scene为空,及page_share_app_message的情况,其他必须 100% 正确
  • 前端是否使用有数 SDK 上报,且有数 SDK 是否为最新版本

# 自测工具&方法

微信扫码腾讯数据管理 (opens new window)【数据接入】-【接入工具】-【日志查询】进行调试。点击【 JSON 】可看到日志明细。提示信息为“✔️”表示数据通过校验。每种行为均产生连续且正确的行为数量 10 条以上,达到送测条件,测试单进入测试流程。

dev_tool_4




# 阶段二测试

生产数据送测试环境:是指开发者在生产环境下,传输生产数据到测试环境。

Tapd 起点状态:测试 token 已发生产

Tapd 过程状态:生产数据测试中

Tapd 终点状态:生产数据测试通过


# 测试要点

数据上报完整率 + 格式上报正确率 + 数据及时性

除涵盖一阶段的测试点外,二阶段测试增加:

# 1. 前后数据一致性

  • 如有订单 id 、商品 skuid 和 门店 id 数据,需前后端上报保持一致
前端行为名称 前端字段名称 后端接口名称 后端字段名称
expose_sku_component spu_id add_order external_spu_id
expose_sku_component spu_name add_order spu_name_chinese
expose_sku_component open_id add_order open_id
expose_sku_component current_price add_order goods_amount
trigger_sku_component spu_id add_order external_spu_id
trigger_sku_component spu_name add_order spu_name_chinese
trigger_sku_component open_id add_order open_id
trigger_sku_component current_price add_order goods_amount
browse_sku_page spu_id add_order external_spu_id
browse_sku_page spu_name add_order spu_name_chinese
browse_sku_page open_id add_order open_id
browse_sku_page current_price add_order goods_amount
browse_sku_page shipping_shop_id store/add external_store_id
add_to_cart sku_id sku/add external_sku_id
add_to_cart spu_id sku/add external_spu_id
add_to_cart sku_name add_order sku_name_chinese
add_to_cart spu_name add_order spu_name_chinese
add_to_cart sku_num add_order goods_num
add_to_cart current_price add_order goods_amount
custom_order order_id add_order external_order_id
custom_order order_time add_order create_time
custom_order open_id add_order open_id
custom_order order_amt add_order order_amount
custom_order pay_amt add_order payable_amount

其中 custom_order.order_idadd_order.external_order_id 保持一致外,还需与小程序前端订单详情页的订单号保持一致。


# 2. 数据上报完整性

  • 系统将模拟用户操作,每个操作中相关所有行为及接口需完整上报

测试行为操作举例:

  1. 打开小程序
  2. 进入小程序首页
  3. 分享首页
  4. 下拉刷新页面
  5. 浏览页面至底部,经过商品卡片
  6. 搜索商品
  7. 点击商品,进入商品详情页
  8. 商品加入购物车,并在购物车内操作“+”和“-”
  9. 提交订单
  10. 关闭小程序

# 3. 数据上报及时性

前端行为和后端订单均要求实时上报,当行为时间与上报时间超过 5 分钟,该测试点将失败。


# 4. 测试点示例

# 前端

# 公共问题
  • “必填”中标记“C”,是conditional的缩写,含义为条件必填,具体的条件请见文档中的”描述“中关于”若填写了xx则必填“的文字
  • 前端 SDK 预置上报的“小程序启动”、“小程序显示”和“小程序隐藏”自动通过
  • 前端 除部分行为可能产生无法获得 open_id, page 为空的情况,其他必须 100% 正确
  • 前端是否使用有数 SDK 上报,且有数 SDK 是否为最新版本
  • 前端上报是否出现多个 appid,或者与《接入申请表》中登记的 appid 不一致的情况

# 商品行为

expose_sku_component(商品曝光)

  • 所有商品推荐模块的浏览是否有上报 expose_sku_component(商品卡曝光)行为
  • 商品曝光次数是否 = expose_sku_component(商品卡曝光)行为上报次数
  • 操作同一个商品sku_idspu_id和商品搜索行为的sku_idspu_id是否一致
  • spu_name 为商品名称,sku_name为商品+规格名称
  • original_price 是否 = 页面上的商品划线价(如无划线价,是否 = 当前售价),`current_price是否 = 页面上的商品当前售价

search(商品搜索)

  • 进行输入商品名称关键字、空格、点击搜索推荐词、直接点击搜索等操作搜索

add_to_cart(商品加购)

  • 点击商品卡、商品详情页、购物车的加购和减购按钮,每次操作加购和减购的次数是否 =sku_num
  • 操作同一个商品sku_idspu_id是否和商品接口的external_sku_idexternal_spu_id 是否一致
  • spu_name 为商品名称,sku_name为商品+规格名称

# 订单行为
# custom_order(下单行为)
  • 同一笔订单, order_idsub_order_id 是否一致
  • 提交一次订单,give_ordercancel_give_orderpayed 是否有重复上报
  • 在前端所有可支付、取消支付的订单的页面(如确认订单提交页、我的订单待付款页、订单详情页等)进行操作,cancel_paycancel_give_orderpaypayed 是否上报
  • 同一笔订单,give_ordercancel_paycancel_give_orderpaypayedrefundorder_timeorder_amtpay_amt 是否一致
  • 同一笔订单,下单行为的订单号 order_id 和订单接口的订单号 external_order_id 是否一致
  • 同一笔订单,下单行为的 open_id 和订单接口的 open_id 是否一致
  • 同一笔订单,下单行为的订单金额 order_amt 和订单接口的订单金额 order_amount 是否一致
  • 同一笔订单,下单行为的应付金额 pay_amt 和订单接口的应付金额 payable_amount 是否一致
  • order_status = give_order时,order_time应 = time (误差最多不可超过一分钟)


# 正向订单接口

  • 后端 order_status = 1110 时,需上报 add_order 接口
  • 同一笔订单,除了1110的其他订单状态,必须使用同一种接口(add_orderupdate_order )进行上报
  • 后端 add_order 上报至少一笔订单中,购买商品款数 ≥ 2,其中第一件商品是同件商品同规格多件,第二件商品是同件商品不同规格多件
  • 同一笔订单,不同 order_status 的 订单金额order_amount 、应付金额 payable_amount 是否一致
  • 同一笔订单,订单接口的 external_sku_idexternal_spu_id 和商品接口的external_sku_idexternal_spu_id 是否一致
  • 同一笔订单,订单接口的订单号 external_order_id 和下单行为的订单号 order_id 是否一致
  • 同一笔订单,订单接口的 open_id 和下单行为的 open_id 是否一致
  • 同一笔订单,订单接口的应付金额 order_amount 和下单行为的应付金额 order_amt 是否一致
  • 同一笔订单,订单接口的应付金额 payable_amount 和下单行为的应付金额 pay_amt 是否一致
  • 同一笔订单,goods_info.payment_amount 之和 + 运费freight_amount是否 = payment_amount
  • 同一笔订单,goods_info.goods_num 之和 是否 = goods_num_total
  • 同一笔订单,同一个 external_sku_id 的商品销售信息是否在 goods_info 中聚合上报
  • 同一笔订单,同一种 payment_type 是否在 payment_info 中聚合上报
  • 同一笔订单,订单实付金额 payment_amount 是否 ≤ 订单应付金额payable_amount 是否 ≤ 订单金额order_amount
  • order_status = 1110时,status_change_time应 = create_time (误差最多不可超过一分钟)
  • order_status = 1150时,status_change_time应 和 前端 custom_order.order_status=payed 时的time误差最多不可超过一分钟
  • 同一笔订单中,00001积分抵扣,00002货到付款,00004现金,00005银行卡,00006购物卡,00008转账支付,00009微信支付,00010支付宝支付,00011微信国际,00012支付宝国际,00013账户余额的支付金额之和 payment_info.trans_amount 是否 = payment_amount
  • spu_name_chinese 为商品名称,sku_name_chinese为商品+规格名称,如 spu_name上报”运动裤男束脚收口冬季卫裤“,sku_name上报“运动裤男束脚收口冬季卫裤XL180”
  • 上报的 dataSourceId 是否与其他接口的 dataSourceId 一致(一般来说,按环境区分,所有后端接口的dataSourceId 需保持一致)



# 引流渠道测试

微信扫码登录腾讯数据管理 (opens new window),点击【授权管理】-【微信授权管理】-【新增授权】,完成接入的小程序授权。

chan_id_1


微信扫码登录腾讯有数 (opens new window)点击【管理工具】-【触点引流管理】-【新增触点】。

chan_id_2


测试时,可按以下内容输入。 触点名称:test 自定义触点标签:test 触点形态:小程序码 小程序:选择您刚才授权的小程序 小程序码类型:常规码 落地页路径:请询问您的技术同学,填写您的小程序首页或任一商品详情页的路径 完成录入后,点击【确定】。

chan_id_3


chan_id 的小程序码已生成。

chan_id_4


请将上图中的“落地页”和二维码提供给测试人员。