淘系技术部研发的录制回放模块的优点及使用场景
署名2021-03-10

淘系技术部的录制回放的优点

淘系技术部的录制回放具有如下优点。

·        提效:基于线上流量的录制/回放,淘系技术部的无需人工准备自动化测试脚本和测试数据。

·        真实:回放场景基于用户的行为进行数据采集,从而可以最大限度地保障和覆盖用户使用的场景。

·        稳定:淘系技术部可以自由屏蔽对外的依赖,杜绝外部因素对自动化脚本的影响。

·        灵活:屏蔽外部依赖之后,一套自动化脚本可以灵活回放到不同的环境。

淘系logo.png

淘系技术部的录制回放的使用场景

(1) 封闭式回放使用场景

淘系技术部的封闭式回放是在假设外部场景没有发生变化的基础上,屏蔽系统对外的全部依赖,如果只看本系统的业务逻辑是否符合预期,那么淘系技术部在系统重构中封闭式回放就是最优的选择。

系统日常变更后的全量回归也是一个重要的使用场景,其可以有效解决淘系技术部由于依赖系统和其他环境的不稳定而导致的回归阻塞问题,如果你的系统对外依赖特别多且大都不稳定,那么封闭式回放将是淘系技术部一个不错的选择。不过,发布前beta环境的开放式主链路回归和线上验证是一定要的,因为其可以有效避免由外部系统的变更而导致的重大问题。

日常新增需求手工回归后将自动采集生成自动化回归脚本,并沉淀成用例,使手工测试收益最大化,同时还能有效解决Bug修复后反复手动回归的问题。

封闭式回放的第四个用法,即线上问题排查,比较偏门。其封闭性支持跨环境回放,可以帮助你昨日重现,可以不断调试(debug)发现问题的代码。

(2) 开放式回放使用场景

因为开放式回放是不会屏蔽外部依赖的,所以其没有跨环境、屏蔽性的优点,但是其能够提升验收的真实性。所以开放式回放最重要且最常见的使用场景是发布前的核心链路验收。

对于读接口的验收,开放式回放绝对是最佳选择。将采集到的读接口数据立即回放到待测机器上,即实时回放,可以避免数据失效的问题,但是这种方式无法沉淀测试用例。那么,淘系技术部利用准实时的校准回放,则可以同时解决数据失效和用例沉淀的问题。所谓校准回放是指,在脚本执行验收之前,先到线上环境获取一次最新的返回值,替换掉原来的返回值,再进行回放验收。校准回放在淘系技术部建站、机房迁移、上云等项目中的使用最为广泛。

(3)  半封闭式回放使用场景

淘系技术部低成本、灵活多变的半封闭式回放,最适合进行系统间联调之前的验证,对某一个或某几个对外依赖按照约定模拟返回,从而提前验收本系统的问题。

虽然是读接口,但某些依赖返回的数据,由于环境不稳定或其他非业务逻辑因素导致的不稳定,也可以进行模拟返回,从而提升验证的通过率。