中国企业的测试之道被美国学习了?
共 3119字,需浏览 7分钟
·
2022-03-18 15:38
👆点击“博文视点Broadview”,获取更多书讯
近日,infoQ发表了一篇文章“从 TikTok“重 QA 轻测试”来看中美软件开发之间的差异”,介绍了TikTok跟Google不同的质量保障模式,前者不要求代码评审和单元测试,每次发布依赖QA,而Google则追求工程生产力赋能模式基础上的高开发测试比,从中引出了中美工程文化的差异及背后的一些原因分析。
(一位曾在一家在美中企(TikTok)工作了一年多的华裔,在 YouTube 上发布了一个视频,从五个方面总结了他从中国企业里学到的经验)
每种模式都有其形成背景、自身的合理性、优缺点。
安全攸关的软件,故障的成本很高,因此必须经过高强度的测试,发现尽可能多的bug,将“带病上线”的可能性降到最低,和线上事故带来的损失相比,所付出的测试成本是值得的。
除此之外,在早期的光盘交付软件时代,bug-fix发布更新很慢、更新成本很高,因此也要求经过足够充分的测试,例如微软早期有大量的测试工程师,开发测试比甚至可以达到1:2。
随着互联网时代的到来,出现了SaaS化的软件交付模式,B/S架构下,业务逻辑的修改主要发生在服务端,bug fix很快,工程师们发现与其在开发测试环境下花费大量的时间找bug,还不如早点上线,早点发现更真实的问题,更快迭代。
当然,这时,线下还是要做足够充分的测试,但要比光盘交付时代“足够充分”的程度发生了变化,另外,对线上收集问题和快速修复问题的效率要求提高了。但要注意到,在这个大背景下,对线下测试的要求,并没有降低,而是提高了。
有两个原因:
第一,互联网产品追求高速迭代,项目进度都非常紧张,给测试留下的时间非常少。在既定的上线日期前,谁都可以延迟,但测试是最后一个环节,上游所有的延迟都会挤占测试的时间,且上游赶活儿的结果是植入更多的bug,所以测试工程师在延期交付的项目里受到的影响是“戴维斯双击”,上游延期5天,测试工期可能要延10天。
第二,高速迭代导致功能扩张也很快,如果测试不能提高工作效率,那么测试团队的增长速度就跟功能扩展速度成正比例。线形增长还是好的,因为随着功能的增多,功能之间的交互和相互影响也越来越多,产生的测试场景不是简单的加和。即使最财大气粗的公司,也无法承担一个团队线形增长的成本。
因此,测试效率的提升是每一个测试团队的核心追求,质量是底线,效率是竞争力和天花板。无论是质量的保证,还是效率的提升,所能依靠的只有技术的提升。人的技能的提升,流程的改进,工具平台的建设,都是技术的一部分。
在流程改进方面,测试的左右移,在近几年越来越达成共识。
所谓测试左移,包括代码评审、单元测试、代码提交时运行包括单元测试在内的持续集成测试尽快发现问题,这几个工作主要是开发工程师的职责,以保证少引入bug、早发现bug。
所谓右移,是指加强线上的测试,包括监控和其他安全生产能力,这个环节需要开发、测试、运维协作。
仅仅依靠QA/测试,既不能支持高质量,也不能支持快速迭代,总体成本还很高。测试左右移,对相应阶段的测试能力都提出了技术建设要求。
因此,无论哪种模式,对于工程效能、测试效能的要求都是很高的,绝对不是手工测试所能搞得定的。
国内的测试团队,立足本公司不同时期的业务和技术发展,经历了鸟枪换炮的过程,测试技术化的趋势非常明显,测试工具化、平台化、智能化带来越来越高的测试效率。
这些测试技术,经由媒体、行业会议等的传播,形成了很好的测试知识分享,促进了测试行业发展和测试从业者的职业发展。
微软在2008年推出了《微软的软件测试之道》,Google在2012年出版了《Google软件测试之道》,成为互联网测试领域的经典作品,在国内产生了很大的影响。
然而,国内还没有一本类似的书。很多人充满疑惑,国内的互联网公司,究竟是如何做测试的呢?毕竟国内外工程模式是有差别的。讲业务产品、开发技术的书很多,但讲相应的测试产品、测试技术的书很少。
最近,阿里巴巴推出了自成立以来第一本系统化地介绍阿里测试的书籍《阿里测试之道》,披露了很多内幕,让我们得以一窥一线互联网公司真实的测试团队状态、一睹其测试武器库的丰富程度、一赏高品质的互联网产品背后那些精益求精的技艺。
本书围绕测试团队经常面临的困局,介绍了一系列技术创新、经验和方法。
结合电商、移动、搜索、推荐、广告、IoT、金融、物流等业务场景,总结了阿里在大促保障、移动App测试、大数据测试、AI系统测试、云计算测试、资损防控、物流类测试等领域的方法、技术和工具平台,以及故障快恢、灰度发布、突袭演练等安全生产技术。
全书聚焦技术亮点和增量,总结实战经验和教训,呈现技术体系和思考,与业界同人交流。
01. 业务场景多,电商、移动、搜索、推荐、广告、IoT、金融、物流等业务场景全覆盖
阿里巴巴技术质量小组
负责横向拉通、组织协调各条业务线测试技术的探索和布局,提升测试技术专业能力,促进人才发展,实现突破和创新。对外的分享交流合作包括“阿里巴巴技术质量”公众号、年度行业会议――阿里巴巴质量创新大会(TICA)、校企合作研究项目等。
保障一个大规模在线数字系统的质量,是一件充满挑战又值得敬畏的事情。每一分每一秒,系统都在开发变更中迭代、在用户行为下学习、在环境变化中适应,还不时要面对突发的流量、攻击或基础设施的故障。保障这样的系统准确、稳定、安全地运行,和保障一个鲜活生命体的健康一样,需要一些“魔法”。阿里的技术质量团队分享了过去二十余年保障大规模电商、物流、支付、云系统顺利运行的经验,写成此书,希望在这个方向上做出一份绵薄贡献。
程 立
阿里巴巴集团首席技术官
本书为阿里巴巴技术质量小组所著,从对阿里测试实践的整体介绍出发,结合其面向特定领域的测试技术和实践展开讨论,给广大产业界人员、高校学生和学术界研究者提供了一扇了解、学习和借鉴阿里测试之道的很有价值的窗口。本书中不少内容涉及对学术界提出的经典或前沿理念、方法和技术的落地和改进,体现了阿里在工程实践中积极探索和开拓创新的精神。
谢 涛
北京大学计算机学院讲席教授
高可信软件技术教育部重点实验室(北京大学)副主任
中国计算机学会软件工程专委会副主任
美国计算机协会(ACM)会士、电气电子工程师学会(IEEE)会士、美国科学促进会(AAAS)会士
有幸提前阅读了《阿里测试之道》,深深感到这本书值得一读。这本书有实实在在的干货,深入讨论了当今流行的测试技术及其实践,也更具系统性、更贴近我们的日常工作。认真学习之后,你虽然不能“天下无敌”,但可以在今后的测试工作中解决许多问题,披荆斩棘,勇往直前。
朱少民
同济大学特聘教授、《全程软件测试》和《敏捷测试》作者
限时优惠,快快扫码抢购吧!
如果喜欢本文 欢迎 在看丨留言丨分享至朋友圈 三连 热文推荐
▼点击阅读原文,了解本书详情~