如下图所示,数据对接分为阶段一测试、阶段二测试 2 个阶段,每轮测试自提交后需等待 0.5 工作日。开发者提升送测数据质量是缩短接入开发时长的有效手段。
本文将重点介绍阶段一和阶段二测试的测试点。
# 阶段一测试
测试数据送测试环境:是指开发者在测试环境下,传输测试数据到测试环境。
Tapd 起点状态:开发完成
Tapd 过程状态:测试数据测试中
Tapd 终点状态:测试数据测试通过
# 测试点示例
# 前端
# 公共问题
- “必填”中标记“C”,是”conditional“的缩写,含义为条件必填,具体的条件请见文档中的”描述“中关于”若填写了xx则必填“的文字
- 前端 SDK 预置上报的“小程序启动”、“小程序显示”和“小程序隐藏”自动通过
- 前端 除部分行为可能产生无法获得
open_id
、page
、chan_wxapp_scene
为空,及page_share_app_message
的情况,其他必须 100% 正确 - 前端是否使用有数 SDK 上报,且有数 SDK 是否为最新版本
# 自测工具&方法
微信扫码腾讯数据管理 (opens new window)【数据接入】-【接入工具】-【日志查询】进行调试。点击【 JSON 】可看到日志明细。提示信息为“✔️”表示数据通过校验。每种行为均产生连续且正确的行为数量 10 条以上,达到送测条件,测试单进入测试流程。
# 阶段二测试
生产数据送测试环境:是指开发者在生产环境下,传输生产数据到测试环境。
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_id
与 add_order.external_order_id
保持一致外,还需与小程序前端订单详情页的订单号保持一致。
# 2. 数据上报完整性
- 系统将模拟用户操作,每个操作中相关所有行为及接口需完整上报
测试行为操作举例:
- 打开小程序
- 进入小程序首页
- 分享首页
- 下拉刷新页面
- 浏览页面至底部,经过商品卡片
- 搜索商品
- 点击商品,进入商品详情页
- 商品加入购物车,并在购物车内操作“+”和“-”
- 提交订单
- 关闭小程序
# 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_id
和spu_id
和商品搜索行为的sku_id
和spu_id
是否一致 spu_name
为商品名称,sku_name
为商品+规格名称original_price
是否 = 页面上的商品划线价(如无划线价,是否 = 当前售价),`current_price是否 = 页面上的商品当前售价
search(商品搜索)
- 进行输入商品名称关键字、空格、点击搜索推荐词、直接点击搜索等操作搜索
add_to_cart(商品加购)
- 点击商品卡、商品详情页、购物车的加购和减购按钮,每次操作加购和减购的次数是否 =
sku_num
- 操作同一个商品
sku_id
和spu_id
是否和商品接口的external_sku_id
、external_spu_id
是否一致 spu_name
为商品名称,sku_name
为商品+规格名称
# 订单行为
# custom_order(下单行为)
- 同一笔订单,
order_id
和sub_order_id
是否一致 - 提交一次订单,
give_order
、cancel_give_order
、payed
是否有重复上报 - 在前端所有可支付、取消支付的订单的页面(如确认订单提交页、我的订单待付款页、订单详情页等)进行操作,
cancel_pay
、cancel_give_order
、pay
、payed
是否上报 - 同一笔订单,
give_order
、cancel_pay
、cancel_give_order
、pay
、payed
、refund
的order_time
、order_amt
、pay_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_order
或update_order
)进行上报 - 后端
add_order
上报至少一笔订单中,购买商品款数 ≥ 2,其中第一件商品是同件商品同规格多件,第二件商品是同件商品不同规格多件 - 同一笔订单,不同
order_status
的 订单金额order_amount
、应付金额payable_amount
是否一致 - 同一笔订单,订单接口的
external_sku_id
、external_spu_id
和商品接口的external_sku_id
、external_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),点击【授权管理】-【微信授权管理】-【新增授权】,完成接入的小程序授权。
微信扫码登录腾讯有数 (opens new window)点击【管理工具】-【触点引流管理】-【新增触点】。
测试时,可按以下内容输入。 触点名称:test 自定义触点标签:test 触点形态:小程序码 小程序:选择您刚才授权的小程序 小程序码类型:常规码 落地页路径:请询问您的技术同学,填写您的小程序首页或任一商品详情页的路径 完成录入后,点击【确定】。
带 chan_id
的小程序码已生成。
请将上图中的“落地页”和二维码提供给测试人员。