首页 » 脚本文章 » 我有几条心得(构造商品数据测试我有)

我有几条心得(构造商品数据测试我有)

乖囧猫 2024-07-23 18:06:43 脚本文章 0

扫一扫用手机浏览

文章目录 [+]

1. 人工成本高:商品、订单的类型与状态笛卡尔乘积后多达上百种,数据种类丰富且构造流程长,测试过程费时又费力;

2. 造数门槛高:商品数据构造往往和账户类型、人群等有强耦合关系,无论是测试验收还是跨部门协作时,都需要测试同学投入很多额外的时间辅助数据构造;

3. 测试工具无数据支撑:在自动化测试、性能测试过程时,需要丰富的数据类型作为驱动。

我有几条心得(构造商品数据测试我有) 我有几条心得(构造商品数据测试我有) 脚本文章
(图片来自网络侵删)

为了解决以上问题,闲鱼测试设计了一套各业务可快速接入,并在PC、闲鱼APP内和钉钉上均可使用的测试数据构造解决方案,旨在提升测试效率的同时,更好地推进测试左移。

方案设计

如下图所示为闲鱼业务的整体架构图,造数平台需要触达多条业务线,支撑商品、订单、优惠等业务的数据构造,并为测试自动化工具提供数据支持。
此外,我们期望合作方在进行产品验收时,也能以便捷的方式获取到数据。

我有几条心得(构造商品数据测试我有) 我有几条心得(构造商品数据测试我有) 脚本文章
(图片来自网络侵删)
业务架构图.png

基于以上愿景,造数平台系统内部设计考虑到了可扩展性、易用性两大方面,其整体架构图如下图所示,一是提供了用户进行模板化管理的入口,通过可插拔的配置来自定义搭建自己所需的造数场景;二是和各平台打通,发挥各平台的优势,达到敏捷高效造数的目的。

造数架构设计图.png
支持动态化配置

为了方便后续不同业务的接入,并为自动化巡检、CI/CD、接口测试等提供数据支持,平台期望以一种确保数据源动态可插拔的方式来承接:不同业务可结合自身业务,配置不同接入源类型的元数据模板,并做到数据源隔离;而后再基于元数据模板进行自定义的业务模板配置,整体步骤如下:

1. 在造数平台上对业务元数据进行配置管理;

2. 基于元数据进行业务模板化配置;

3. 造数PC端、闲鱼APP以及钉钉机器人上将共享一份配置;

打通多端造数入口

为了兼顾不同用户人群的使用体验,平台上层入口支持了三种:PC工作台、闲鱼APP内和钉钉内交互机器人。
三种渠道各有优势。

闲鱼APP内

闲鱼APP内的优势在于可以自动获取设备环境信息。
以商品域测试为例,闲鱼不同商品类型的发布入口不同,其中部分商品发布流程有一定时间成本。
我们基于JS Bridge,拿到闲鱼app当前用户的登录态,一键发布宝贝,并获取到商品的schema信息跳转至商品详情页,方便测试同学进行快速验证。

闲鱼APP内发布商品.gif
钉钉内交互机器人

钉钉交互机器人的方式进行造数的优势在于便捷 、通用、简洁,可以和日常工作无缝衔接。
举个栗子:验货宝业务是C2S2C的模式,中间部分订单节点的推进是需要联系开发或对应的服务商的。
遇到问题都需要拉群进行处理,如下图所示,我们将验货宝推单的功能做在钉钉内,支持机器人交互的方式进行推单,一是省去了联系开发和服务商推单的时间成本,二是如遇订单推进的相关问题,我们也可直接将错误信息反馈到群内,省去了换端的成本。

钉钉机器人交互.png
PC工作台

PC工作台操作的优势在于方便管理。
在PC端,我们可以进行商品发布和订单模板的配置和自定义修改,其操作流程可参加上文中提及的动态化配置步骤。
此外在PC端,我们还支持了模板克隆、以及批量造数等功能。

PC端批量造数.png
提升数据覆盖度

目前平台主要覆盖了商品、交易、营销优惠三大业务线,支持构造商品、订单、交易履约以及营销优惠的数据构造。
如下图所示为造数工厂目标覆盖的主要数据类型。

数据覆盖度.png

其中商品支持了诸如优品、营销以及一些基础商品类型的构造,目前全部类型都已覆盖完成。
交易已支持C2C不同状态类型的订单构造,其他订单类型也已在持续接入中。

效果及展望

造数工厂未上线之前,无论是业务测试、产品设计验收还是跨部门合作,都需要牺牲测试同学的大量时间构造数据。
现如今我们以最小的建设成本,搭建了一套具有可配置、可扩展能力的造数工具平台,支持大家自主获取数据,工作效率得以大幅度提升。
根据目前效果来看,商品的获取速度由原本的分级提升至秒级。
至于订单的构造和履约推进流程复杂,如下图所示,测试同学往往需要准备买卖家两个账号,分别发布和购买商品,后续履约推进还需联系开发,中间的等待过程往往总是漫长。
现在通过造数工厂即可自助造单和履约推进,单笔交易流程回归耗时由1h下降到分钟级别。

交易测试流程.png

自年初上线以来,造数平台已接入商品、交易、优惠三大业务线,覆盖核心商品类型20+,通过平台发布商品60000+,造单100+。
此外还支撑了商品合规、商详升级等多个重构需求的数据准备工作,测试效率得到显著提升。
后续,我们将从几个方面对平台进行持续优化:

• 持续提升数据覆盖度,承接诸如订单诊断、商品诊断、用户资产等更多的数据构造工作;

• 目前平台的业务接入不支持自定义插件化扩展,降低接入成本将是我们持续努力的方向;

• 丰富\"测钉一体化\"的交互模式,让平台所有的数据获取,做到一个群就够了。

平台希望通过快速的数据构造能力赋能业务测试,推进测试左移。
让更多的闲鱼小二解放双手,从重复性的劳动中跳脱出来。

标签:

相关文章