订单流量录制与回放探索实践

文章介绍了得物公司内部使用的流量录制回放平台Pandora,它扩展了官方开源版本的功能,支持更多子调用和入口调用。通过流量回放,可以在测试环境中验证接口逻辑和中间链路,提高回归测试的效率和准确性。实践表明,流量回放在缺陷发现、特别是代码层面问题和性能问题上表现出色,但面临排错效率、异步线程处理和接口覆盖率等问题。未来规划包括预发环境的非mock回放和优化策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.背景介绍

1.1 得物pandora介绍

什么是流量录制回放?流量录制回放是应用端通过挂载注入录制器探针自动注册到服务端形成录制流量回流,将所有外部调用依赖的响应内容(如数据库、分布式缓存、外部服务响应等)进行完整记录。由平台向回放器分发流量回放指令。其核心价值是通过直接录制生产的真实数据,将生产真实数据转化成可复用、可执行的流量,快速地在测试环境中进行回放比对接口返回值和中间链路的验证。

得物版本的流量录制回放平台pandora在官方开源版本上进行了很大的拓展,支持了很多官方版本不支持的子调用和入口调用。此外,平台还对得物的中间件进行了诸多适配工作,避免了大量的回放失败噪音。

1.2 市场工具对比

目前市场上已知的流量录制回放平台大部分都是在Jvm-Sandbox-Repeater基础上进行二次开发和改造,并且多数都是只支持Java语言。核心原理也都是通过录制线上真实流量然后在测试环境进行回放,验证代码逻辑正确性。

2.实践落地

2.1 协作模式

在具体的实施层面,目前采用的是业务测试,平台研发,业务研发三方协同的模式。任务分拆如下图所示。

2.2 阶段应用

流量回放在各阶段的理想实施应用:

提测阶段卡点:聚焦核心场景,低成本验证每次提测对于核心场景的影响;

测试回归阶段卡点:全量场景,重点追求覆盖场景全面性,验证新功能对历史功能的影响;

预发环境回归:目前预发跟生产同库,未来会推动落地基于预发&生产环境的流量回放,尽可能拉近录制时环境和回放时环境的仿真差异,从而降低回放阶段的噪音影响;

在得物的整体QA体系中,流量回放短期聚焦在回归兜底保障上。

2.3 实践落地

流量回放的开展自发起后,在本域由探索尝试阶段逐渐过渡到应用场景拓展阶段。

订单流量回放模式

在经过一段时间的探索,摸索出了一套适用于本域迭代的模式。

Part1、尝试接入

团队开始开展流量回放的专项之后,通过调研,选取了40%的服务优先接入。

  1. 阶段目标
  • 完成30%P0应用top10 接口100%场景覆盖,形成迭代落地质量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值