掘金 后端 ( ) • 2024-05-15 17:19

中国茶饮连锁品牌茶百道创立于2008年,隶属于四川百茶百道实业股份有限公司。据有关数据显示,2023年茶百道在中国的现制茶饮店市场排名第三位,市场份额达到6.8%。截至2024年2月份,茶百道已拥有超过6000万名会员和近8000家门店。茶百道的门店遍布全国31个省市,覆盖超过330个城市,实现了中国所有省份及各线级城市的全覆盖。2023年,茶百道门店的总零售额约为169亿元。2024年4月23日,茶百道于港交所主板挂牌上市,成为港股上市茶饮新势力。

伴随着门店数量的快速增长,茶百道持续加强技术投入,以“运营数字化、业务自动化、决策数智化”为建设目标,以“人、货、场”三大基本商业要素为核心,致力于打造能够全面支持其业务迅猛发展的数字化系统,旨在有效提升业务运营效率,持续增强企业发展的核心竞争力。

茶百道的产研团队包括开发团队和测试团队,提质增效是产研团队工作的重点也是长期目标。业务的高速增长需要以高质量的软件交付作为支撑,单纯依靠人工开展软件测试已经无法满足实际的业务需求,茶百道希望通过专业化的测试工具和平台化管理来提升软件测试的效益,进而实现高质量的软件交付。

一、茶百道产研团队现状

目前,几乎所有的中国茶饮品牌都面临着来自外部和内部的双重挑战。外部有激烈的市场竞争,而企业内部对于运营效率的要求也在不断提升。为了应对这些挑战,茶百道的产研团队加速推进数字化转型战略,构建了OMS(Order Management System,订单管理系统)、WMS(Warehouse Management System,仓库管理系统) 和TMS(Transportation Management System,供应链管理系统)一体的供应链信息化、自动化技术系统,实现了库存、订单、运输资源、到店服务等阶段的全链路数字化转型。

然而,完成内部全链路数字化并非茶百道提质增效的终点。由于茶百道有着高频率的线上和线下营销活动,各类应用系统经常面临多元化的变更需求。为了满足这些需求,茶百道的产研团队一方面需要投入大量的技术和人力资源,对系统进行持续优化和升级,另一方面也要保证产品交付的高质量。

在内部系统持续迭代的过程中,产研团队面临以下两个难题:

■ 缺少统一的软件测试管理平台: 管理平台统一性的缺失主要体现在测试工具碎片化以及测试团队与开发团队的协作上。

测试团队方面,茶百道的产研团队根据产品线的区别分为不同的项目组,各个项目组采用的测试工具不尽相同。大多数项目组在测试时使用Postman、JMeter等测试工具,另一部分项目组的测试人员则借助Python或Java测试框架编写自动化测试脚本,并通过Coding对缺陷和需求进行管理。不同的测试工具和不同的测试技能导致测试团队无法全面统一管理测试用例、过程数据和测试报告等;

测试团队与开发团队的协作方面,由于开发成员的自测力度不足,导致提测后部分功能模块反复出现缺陷。除此以外,在前后端开发联调时,开发成员较少参与Mock工作,测试团队与开发团队的协作效率较低。

迭代频率高,难以全量回归: 对软件的新版本进行测试是保证迭代质量的重要一环。然而,茶百道的软件每天都有新版本发布,测试团队时间紧、任务重,单纯依靠人力很难实现全面的测试覆盖和回归。

为了解决以上两方面的问题,茶百道的产研团队迫切希望能够建设一个统一的自动化测试平台,加强软件测试的统一管理和团队协作能力,并且通过建设产研过程流水线和自动化手段提升测试效率。

二、为什么选择MeterSphere?

在针对市场上的多款产品进行调研后,茶百道的产研团队与MeterSphere开源项目组围绕产研管理平台化的主题进行了多次交流探讨,共同研究产研管理平台的最佳落地方式。最终决定以茶百道现有的流水线构建工具阿里云云效为基础, 由MeterSphere提供平台测试管理能力和云效流水线建设方案。

通过阿里云云效和MeterSphere的结合,构建持续测试、持续集成的管理平台,提高开发团队和测试团队的协作效率,提升产品上线质量。

MeterSphere开源持续测试平台的优势包括:

■ 平台化管理: MeterSphere的平台化能力为解决茶百道产研团队所面临的两大困难提供了有力的支持。

首先,MeterSphere平台的一站式能力避免了测试工具的碎片化。在将产研团队成员负责的业务线按照项目迁移到MeterSphere平台之后,测试人员无需使用多种不同的测试工具,转而基于MeterSphere平台统一开展测试工作。这样一来,就避免了编写脚本时反复切换各种测试工具的窘境,降低了人力维护的投入成本;

其次,MeterSphere平台的使用让开发人员和测试人员的协作变得更加简单和快捷。MeterSphere支持开发人员在平台上同步完成接口定义和Mock联调工作,提升了开发人员的Mock联调工作参与度,测试与开发、开发与开发之间的协作力度得到了加强;

最后,针对产品迭代频率高、测试压力大的挑战,MeterSphere能够有效降低管理人员对测试进度的管理难度。在MeterSphere平台上,团队管理人员可以在一个看板上看到整体测试进度,方便各方对产品的质量和交付时间进行评估和管理。

■ 高易用性和自动化能力: 当从历史测试工具中迁移存量测试脚本数据时,由于MeterSphere测试平台以JMeter为底层框架,可以广泛适应测试领域内的主流技术栈,测试人员能够快速上手使用,快速迁移相同格式的测试数据。

脚本自动化方面,MeterSphere也提供了强有力的支持能力。MeterSpher支持在编排自动化测试脚本的同时封装公共步骤,在面对不同的业务测试任务时,这些封装好的脚本可以被快速拆分和组装,在提升脚本编排效率的同时也提高了脚本的复用率。

■ DevOps集成能力: 借助MeterSphere平台和阿里云云效的集成,在每次产品发布之前,MeterSphere都会定时触发回归测试和日常巡检任务,减少了测试人员的重复工作量,提高了回归效率。

三、茶百道测试平台建设流程

1. 存量测试数据迁移

茶百道的存量测试数据资产由各个测试小组的成员保存,这些资产的数据类型多种多样。MeterSphere支持Postman和JMeter脚本数据的直接导入,因此简单调试之后即可完成存量数据的迁移工作。

与此同时,研发人员使用IDEA接口同步插件,可以直接将接口同步至MeterSphere平台,并且完成接口定义、Mock联调等工作,从而减少接口文档的维护时间。MeterSphere对数据迁移和接口同步的支持能力有效降低了团队间的沟通成本,增强了开发团队与测试团队之间的协作能力,提升了测试团队的工作效率。

2. 持续测试

在茶百道测试平台建设的过程中,不仅有MeterSphere平台提供的工具支持,也有产研团队在日常测试中总结出的一套完整的流程支撑。

茶百道自创立以来,测试团队不断完善和优化测试流程,形成了“研发接口同步及Mock→接口Case→自动化场景编排→云效流水自动构建及推送测试结果→测试进度和测试成果展示”的完整测试流程闭环。茶百道长期摸索沉淀出的完整交付流程,加上MeterSphere的助力,使得茶百道的测试团队真正实现了“持续测试”的目标。

▲ 图1 茶百道的持续测试流程

▲ 图2 茶百道使用MeterSphere管理接口

3. 集成阿里云云效

在持续测试阶段,茶百道的测试团队通过使用MeterSphere的Jenkins插件,直接对接到阿里云云效流水线,从而在研发迭代的过程中构建了持续集成和持续交付流水线流程。在开发人员提测后,MeterSphere自动触发定时回归任务,自动执行设定的测试计划,并将测试报告自动推送至对应的测试人员。测试人员可以根据测试报告,对缺陷再次进行回归测试,直至达到发布标准后再上线。

▲ 图3 MeterSphere集成阿里云云效

▲ 图4 阿里云云效集成Jenkins插件

四、总结与期望

在MeterSphere开源持续测试平台的帮助下,茶百道构建起自己的持续测试、持续集成管理平台,优化了产研团队的协作流程,降低了日常协作成本,形成了一套完善的产研DevOps平台化管理体系。

目前,茶百道使用MeterSphere管理着3000多个接口,对核心业务的接口自动化测试场景实现了全覆盖;DevOps流水线每天定时触发并执行测试计划,减少了人工运行回归测试脚本的重复率和沟通成本,提高了产品版本的构建效率与回归效率,为产品高质量上线提供了强有力的保障。使用MeterSphere完成测试平台建设后,茶百道的产研团队整体人效提升15%以上,减少了约两个人员的成本投入。

在未来,茶百道的测试团队希望将自身“精准测试”的理念和MeterSphere测试平台的接口测试能力结合起来,实现数据打通,将代码、用例和执行进行有效关联。