写点什么

B2B 跨境支付平台 XTransfer 的质量保障体系建设之路:测试的左移与右移是关键

  • 2023-02-07
    北京
  • 本文字数:3087 字

    阅读完需:约 10 分钟

B2B跨境支付平台XTransfer的质量保障体系建设之路:测试的左移与右移是关键

质量保障体系的建设是个复杂、长期的过程,基于业务发展阶段、团队规模和业务形态,每家公司都有不同的思考和实践。


近年来,跨境电商新业态的高速发展使得跨境支付赛道备受关注。一般来说,在交易模式上跨境电商分为 B2B 和 B2C。相较于 B2C,B2B 模式交易流程更复杂,其背后的质量保障体系建设就显得尤为关键。


近期,InfoQ 采访了 XTransfer(上海夺畅网络技术有限公司)技术总监马吉武,请他与我们分享了 XTransfer 的质量保障理念,以及他对于质量保障体系建设的思考和实践经验。


XTransfer 创立于 2017 年,聚焦于 B2B 跨境支付,为从事 B2B 出口的中小微企业提供跨境支付及风控服务。XTransfer 对于质量保障体系的建设从 2018 年初第一款外贸收款产品问世便已开始。在业务发展初期,质量保障体系的工作主要体现在功能可用性测试层面;随着业务的发展和团队的精进,逐渐扩展为测试的左移与右移。发展至今,质量保障已不再停留在“功能性测试”这样一个工程化流程的单一环节,而是拓展到“大质量”的范畴,即协同工程化上下游的多个环节共同确保产品交付的稳定可靠。


关系到中小微外贸企业的资金安全,B2B 跨境支付产品对于质量有着极高的要求,这给 XTransfer 的质量体系建设带来了不少挑战。“具体而言,主要体现在三个方面:首先在业务层面,绝不允许有任何一笔交易出现资金问题;其次,B2B 跨境支付交易链路更长,相应的产品质量保障链路也更长,这给质量保障工作增加了难度;最后,XTransfer 业务发展迅速,产品也在快速迭代优化,这也需要质量保障体系随之迭代优化。”马吉武介绍道。


质量保障理念


XTransfer 质量保障理念的核心体现在质量设计和质量实践两个方面。


据马吉武介绍,在业务早期发展阶段,主要是产品驱动、研发和测试互相配合。不同的测试方法是验证和保障交付质量的手段,而不是构建质量体系的基石。测试的努力带来的更多是一些“安全感”,而非安全保障。


因此,要做到高质量的交付,就需要回到质量的本质,好的产品依赖于其底层设计。简单来说,XTransfer 的质量设计核心思路是“好的质量是设计出来的,而非测试出来的”。保障质量需要尽可能地“设计先行”,在前期充分讨论需求,严格把关设计,把质量问题在源头解决。与之相对应的则是,不同于早期阶段的完成测试动作,团队需要从交付质量保障转入质量共建。



测试的左移与右移是 XTransfer 质量保障团队目前正在探索的质量保障路径的关键,也是 XTransfer 质量保障理念的落地尝试。测试的左移与右移指的是,让质量保障尽早地发生在整个 SDLC(产品开发生命周期),同时确保稳定性得到持续保障。


在需求阶段,测试左移的目标着力于验证需求质量,包括方案验证、功能验证、支撑性验证等,由此分析需求的完整性,及时发现设计中可能存在的问题。“XTransfer 质量保障团队有明确的需求评审规范,测试会在项目需求阶段介入,避免等到实际测试阶段时才发现问题,导致修复成本过高,无法高效提交项目。”


在开发阶段,XTransfer 质量保障团队需要充分了解开发的代码框架,从而更好地评估改动范围和需要回归的内容。同时,质量保障团队可通过提供自动化测试脚本的方式,让开发团队在前期加强自测,避免在后续收到提测包时仍然有基础问题存在。此外,质量保障团队与开发团队会在共同的规范下有序推进开发工作,这也是测试左移的关键一步。“目前 XTransfer 质量保障团队已经确立了开发质量规范,制定动作、明确责任人。其核心目标是将问题在初始阶段解决,避免在产品提交后重复工作。”


在运营阶段,XTransfer 质量保障团队会持续监控产品在生产环境下的运营体验,确保产品在实际环境、场景下,其功能和体验都能符合用户预期,而这也是测试右移的关键步骤。此时,质量保障团队会通过埋点数据、生产监控、用户反馈等措施,与运维团队一起完善监控体系,发现系统可能存在的漏洞并及时修正。例如,对用户名、访问时间、资源地址进行监测,判断是否符合规范和要求;对访问频率过高或者其他异常情况进行监控,若符合警告规则,系统可通过邮件等方式通知相关人员,并帮助其快速定位问题。

质量数字化管理


对 XTransfer 来说,质量数字化管理的本质是将需求质量、过程质量、交付质量通过数字化指标抽象出来,并以此为依据完成质量保障。例如,通过大量元数据的收集和管理,团队可快速发现问题、定位问题,这其中涉及到数字化指标包括如过程质量中的 demo 次数、转测次数等;交付质量中的 UT 覆盖情况、自动化覆盖情况、缺陷情况等。


其中,需求质量主要指的是在包括原型图、PRD 文档、交互设计、技术方案、测试用例等基础上,质量保障团队从不同于产品、研发的角度理解需求设计,同时根据已有的数字化指标提出建议并协同产品、研发团队进行修正。在项目启动阶段,质量保障团队就参与到整个设计过程中,充分汲取产品、研发等不同岗位角色的需求,降低后续产品的过程风险和交付风险。


“对于过程质量和交付质量而言,一方面是通过测试的左移右移确保整个产品从研发到交付全过程保持质量可控;另一方面则是构建一系列标准化门禁,如研发架构侧资损防控标准化设计检查清单、验收清单,以及 QA 侧的 Sign off 条件、严格上线验收清单,包括账务比对清单、用户交互验收清单等。不能达到设计预期的产品将无法完成交付。”

大质量模型

XTransfer 大质量模型指的是“持续”的质量保障能力,可以从“质量金字塔模型”和“一切皆代码”层面理解。


其中,质量金字塔模型在不同公司均有实践,这套理论模型在 XTransfer 质量保障体系中同样有所应用,包括从 UT、API、UI 到 E2E 都是不可或缺的部分,但是在 XTranser 更为坚持的观点在于,一切理论的背后都是代码,对于质量的保障实际上最终要落到代码层面。

 


快速的高质量交付,意味着持续的全回归测试,“智能化测试”在其中扮演了重要角色,能够实现精准和高效。精准,是通过代码去度量影响范围;高效,则是通过代码如 UT/E2E 等来实现快速测试。


为持续提升测试精准度和效率,XTransfer 质量保障团队会把测试专项能力向服务化能力转型,建立自动化为主的测试能力,减少手工测试和手工操作。目前,测试自动化主要包括自动化环境创建与部署、生成测试数据、执行自动化测试,生成测试结果与日志;此外,也会对测试相关结果进行自动化监控与分析,自动生成测试报告,便于进行测试定位失败原因与快速修复。



质量文化


质量文化在 XTransfer 被抽象为质量规范、质量度量和技术延展。随着业务更加成熟、规模不断增长,质量文化需要不断强调、落地和迭代,这就需要制定一些规范来保证落地效果。这里的规范不是强制要求大家一定要做什么,而是为了大家在不同的工作阶段都有据可依,知可为、知不可为。质量规范体现在产品需求阶段,有针对性地构建 PRD 规范、技术方案规范,在后续的开发、测试、上线等阶段构建开发规范、提测规范、发布规范、运营规范等。


同时,在不断提高产品质量的过程中,如何评估质量的效率也颇为重要,XTransfer 质量保障团队将其抽象为质量度量,包括需求度量、开发度量、交付度量、运营度量、故障演练度量等维度,确保大家在关注质量的过程中,也要同步关注效率。


“建立质量文化,还需要关注对质量技术的研究,这是确保质量保障体系在团队最终落地,并提高质量效率的基础能力。”在 XTransfer,团队关注新的质量保障理论和技术层面的探索,质量不仅是后台支持保障,也是前沿技术的落地场景。


例如,随着业务快速发展,传统的自动化测试已经不能满足快速变化的业务需求,自动化前置是 XTransfer 目前研究的重要课题。“为了持续提升研发交付效能,XTransfer 质量保障团队将进一步加强人工智能技术在测试领域的应用,其本质是结合 AI 算法和测试数据对测试多环节进行针对性的优化,达到对业务需求更强的适应性和响应能力。”

2023-02-07 16:268145
用户头像
蔡芳芳 InfoQ主编

发布了 804 篇内容, 共 579.5 次阅读, 收获喜欢 2802 次。

关注

评论 1 条评论

发布
用户头像
快速的高质量交付,意味着持续的全回归测试,“智能化测试”在其中扮演了重要角色,能够实现精准和高效。精准,是通过代码去度量影响范围;高效,则是通过代码如 UT/E2E 等来实现快速测试。
2023-04-10 17:11 · 广东
回复
没有更多了
发现更多内容

Python OOP-2

若尘

面向对象 oop 面向对象编程 Python编程

微信读书又更新,吃灰已久的Pencil又能拿出来遛一遛了。

彭宏豪95

效率工具 读书 阅读 4月日更 微信读书

比微信文件传输助手更好用的传输工具|Telegram

彭宏豪95

微信 效率 文件传输 4月日更 Telegram

思维训练

Ryan Zheng

iOS 面试策略之语言工具-Swift

iOSer

ios swift 面试

内容平台与热点挖掘思考

程序员架构进阶

28天写作 4月日更 领域思考 内容平台

ceph-csi源码分析(1)-组件介绍与部署yaml分析

良凯尔

Kubernetes 源码分析 Ceph CSI

Go 的 UTF-8 实现

Rayjun

utf-8 Go 语言

2个月从0到1,一年5次迭代,百度“量桨”效率喷涌背后的工作秘诀

脑极体

Redis的常见问题

赖猫

c++ redis Linux 后端

区块链如何推动数字化转型?

CECBC

区块链

ceph-csi源码分析(2)-组件启动参数分析

良凯尔

Kubernetes 源码分析 Ceph CSI

ARST-日常打卡3

pjw

JVM-技术专题-虚拟机知识遗漏盘点

码界西柚

JVM

Web3.0时代需要什么样的企业级协作工具?

猫Buboo

都在看的18WJava核心成长笔记 让我成功收获字节、阿里、腾讯大厂Offer!

学Java关注我

Java 编程 架构 架构师 程序人生】

想拿到10k-40k的offer,这些技能必不可少!作为程序员的你了解吗?

Java架构师迁哥

怎么做到的?3个月入职蚂蚁金服(Java岗)从年薪10W到年薪30W

Java架构师迁哥

四面拿到京东Java岗 30K offer 全过程分享

Java架构师迁哥

打通本地部署和公有云,混合云架构让“鱼”和“熊掌”兼得(一)

UCloud技术

混合云

Golang 反射

escray

学习 极客时间 Go 语言 4月日更

Redis-Cluster集群

Sakura

4月日更

封神总结!蚂蚁金服+滴滴+美团+拼多多+腾讯15万字Java面试题

Java架构追梦

Java 阿里巴巴 架构 面试 金三银四

封神总结!12W字“多线程与高并发实战手册”成功助我涨薪19K

比伯

Java 程序员 架构

【网络】【操作系统】详解select、poll、epoll

Linux服务器开发

后端 网络编程 Linux服务器开发 网络io eopll

流量分析中常见的指标简单总结

五分钟学大数据

4月日更

深入理解Spring框架之AOP子框架

邱学喆

aop 动态代理 cglib ProxyConfig AspectJ

高效获取信息的几点经验

彭宏豪95

效率 信息 阅读 4月日更

DAPP系统开发运营版,DAPP系统开发案例源码

系统开发咨询1357O98O718

介绍一款能取代 Scrapy 的爬虫框架 - feapder

星安果

Python 爬虫 Scrapy feapder

当时尚撞上区块链,为潮酷创意赋予专属

CECBC

时尚产业

B2B跨境支付平台XTransfer的质量保障体系建设之路:测试的左移与右移是关键_语言 & 开发_蔡芳芳_InfoQ精选文章