新書推薦:
《
新民说·现实政治史:从马基雅维利到基辛格
》
售價:NT$
454.0
《
宽容是件奢侈品(人生360度·一分钟经典故事)
》
售價:NT$
203.0
《
甲骨拼合六集
》
售價:NT$
1520.0
《
视觉美食家:商业摄影实战与创意解析
》
售價:NT$
602.0
《
中国经济发展的新阶段:机会与选择
》
售價:NT$
454.0
《
DK月季玫瑰百科
》
售價:NT$
959.0
《
为你想要的生活
》
售價:NT$
301.0
《
关键改变:如何实现自我蜕变
》
售價:NT$
352.0
|
編輯推薦: |
◇阿里官方首本测试书,思辨测试要义,细解技术创新
◇电商、移动、搜索、推荐、广告、IoT、金融、物流等业务场景全覆盖
◇技术创新、经验、方法、工具、平台一应俱全
◇涉及大促保障、移动App测试、大数据测试、AI系统测试、云计算测试、资损防控、物流类测试等领域
◇更有故障快恢、灰度发布、突袭演练等安全生产技术
◇有亮点、有增量、有经验、有教训,更有体系和思考
|
內容簡介: |
本书是阿里巴巴集团自成立以来本全面记录阿里测试技术的书籍。围绕测试团队经常面临的困局,介绍了一系列技术创新、经验和方法。结合电商、移动、搜索、推荐、广告、IoT、金融、物流等业务场景,总结了阿里在大促保障、移动App测试、大数据测试、AI系统测试、云计算测试、资损防控、物流类测试等领域的方法、技术和工具平台,以及故障快恢、灰度发布、突袭演练等安全生产技术。全书聚焦技术亮点和增量,总结实战经验和教训,呈现技术体系和思考,与业界同人交流。本书适合互联网行业中的高级测试管理和技术人员阅读,这些人员有比较深厚的测试基础,面对诸多质量挑战,迫切需要寻求测试技术的突破以支撑业务的快速增长。对于想在类似业务领域建立完整测试体系的从业人员,无论经验背景如何,本书都将提供一些有益的启发。对于高校学生和学术界科研人员,本书也提供了一个了解阿里测试实践的窗口。
|
關於作者: |
阿里巴巴技术质量小组负责横向拉通、组织协调各条业务线测试技术的探索和布局,提升测试技术专业能力,促进人才发展,实现突破和创新。对外的分享交流合作包括“阿里巴巴技术质量”公众号、年度行业会议——阿里巴巴质量创新大会(TICA)、校企合作研究项目等。
|
目錄:
|
目 录
第 1 章 测试团队的发展之路 .................................................................................... 1
1.1 测试团队面临的困局 ........................................................................................... 1
1.2 建立代码门禁 ....................................................................................................... 2
1.2.1 什么是代码门禁 ....................................................................................... 3
1.2.2 代码门禁的效果 ....................................................................................... 3
1.2.3 落地和优化 ............................................................................................... 4
1.2.4 更多的用途 ............................................................................................... 5
1.3 理解测试的本质 ................................................................................................... 5
1.4 缩短反馈弧 ........................................................................................................... 7
1.4.1 为什么缩短反馈弧是关键 ....................................................................... 7
1.4.2 怎么才算反馈弧短 ................................................................................... 8
1.4.3 缩短反馈弧的成本和投入产出比 ........................................................... 9
1.5 提升测试的稳定性 ............................................................................................. 10
1.5.1 高频 ......................................................................................................... 10
1.5.2 隔离 ......................................................................................................... 13
1.5.3 用完即抛 ................................................................................................. 14
1.5.4 不自动重跑 ............................................................................................. 15
1.6 提升测试的有效性 ............................................................................................. 16
1.6.1 测试有效性需要面对的挑战 ................................................................. 16
1.6.2 变异测试和 Bug 注入 ............................................................................ 17
1.6.3 更多的注入类型 ..................................................................................... 21
1.7 提升测试的充分性 ............................................................................................. 25
1.7.1 用例自动生成 ......................................................................................... 25
1.7.2 业务覆盖率度量 ..................................................................................... 30
1.8 从测到不测 ......................................................................................................... 31
1.8.1 防错设计 ................................................................................................. 31
1.8.2 静态代码分析和 Bug 自动识别 ............................................................ 41
1.9 本章小结 ............................................................................................................. 42
第 2 章 大促质量保障 ............................................................................................. 44
2.1 大促全链路的风险与挑战 ................................................................................. 44
2.1.1 全球流量洪峰下的高可用挑战 ..................................................... 44
2.1.2 纷繁复杂的用户场景 ............................................................................. 45
2.1.3 无处不在的用户体验 ............................................................................. 46
2.1.4 三位一体的保障体系 ............................................................................. 46
2.2 全链路压测 ......................................................................................................... 47
2.2.1 全链路影子体系 ..................................................................................... 47
2.2.2 全链路压测模型 ..................................................................................... 48
2.2.3 全链路压测执行策略 ............................................................................. 49
2.2.4 常态化智能压测 ..................................................................................... 50
2.3 全链路功能 ......................................................................................................... 52
2.3.1 统一环境隔离 ......................................................................................... 52
2.3.2 全链路影子数据 ..................................................................................... 54
2.3.3 全链路大促用例精简 ............................................................................. 56
2.4 全民预演 ............................................................................................................. 59
2.4.1 什么是全民预演 ..................................................................................... 59
2.4.2 全民预演的核心目标 ............................................................................. 60
2.4.3 全民预演如何实施 ................................................................................. 61
2.4.4 预演执行策略的制定 ............................................................................. 63
2.4.5 预演问题的收集和跟进 ......................................................................... 64
2.4.6 大促持续集成 ......................................................................................... 64
2.4.7 全民预演平台化支撑 ............................................................................. 65
2.5 预案开关 ............................................................................................................. 68
2.5.1 预案的使用场景 ..................................................................................... 68
2.5.2 预案评估方式 ......................................................................................... 69
2.5.3 预案流程 ................................................................................................. 70
2.5.4 预案平台 ................................................................................................. 70
2.5.5 预案与攻防 ............................................................................................. 72
2.5.6 预案的目标与展望 ................................................................................. 72
2.6 全链路预热 ......................................................................................................... 73
2.6.1 解法 ......................................................................................................... 73
2.6.2 适用的业务场景 ..................................................................................... 75
2.6.3 核心应用场景 ......................................................................................... 76
2.7 快速扩/缩容 ........................................................................................................ 78
2.7.1 分析 ......................................................................................................... 79
2.7.2 方案 ......................................................................................................... 79
2.7.3 优化 ......................................................................................................... 80
2.7.4 演练 ......................................................................................................... 84
2.7.5 效果 ......................................................................................................... 84
|
內容試閱:
|
保障一个大规模在线数字系统的质量,是一件充满挑战又值得敬畏的事情。每一分每
一秒,系统都在开发变更中迭代、在用户行为下学习、在环境变化中适应、还不时要面对
突发的流量、攻击或基础设施的故障。保障这样的系统准确、稳定、安全地运行,和保障
一个鲜活生命体的健康一样,需要一些“魔法”。
互联网技术带来的变革,已经深入商业、民生、社会的方方面面,数字系统成为社会
的生命系统。保障数字系统质量的方法,必须变成可复制的工程实践经验,被所有从业者
掌握。阿里的技术质量团队分享了过去二十余年保障大规模电商、物流、支付、云系统顺
利运行的经验,写成此书,希望在这个方向上做出一份绵薄贡献。
解决质量问题,需要以求真务实的态度,根据场景与技术栈的实际情况,给出具体的
解决方案。但一切质量技“术”的背后,还是能够看到大家不约而同的“道”。
一是“质量左移”。追本溯源定位引发质量问题的源头,并且在靠近源头处采取有效
的措施进行缺陷控制,是成本的方式。大到架构层面的容灾容错设计,小到代码门禁
的严格纪律,都是质量左移的实践。
二是“端到端验证”。只有通过端到端的方式才能对质量进行真正可靠的验证。阿里在
保障“双 11”流量洪峰顺利通过的实践中沉淀下来的全链路压测技术就是一个有代表性的
案例。
三是“持续验证与恢复”。对系统的正确性、性能、稳定性、用户体验等方面进行在线
监控、持续验证,在问题出现的时间发现并快速修复——我们常常把这种能力比作系
统内在的免疫能力。有了这种系统内在的免疫能力,搭配各种灰度发布验证技术,就可以
极大地降低缺陷可能造成的影响。
系统的质量就像一面镜子,能反映出一个技术团队的综合水平,不仅包括技术能力,
也包括管理水平与技术素养。抓质量的根本是建立整个团队的质量意识,提升团队的质量素养。每一次对故障的复盘,都是提升质量意识与水平的绝好机会。然而,通过真实故障
来学习,毕竟成本较高,且随着系统越来越健康,通过真实故障进行学习的机会也越来越
少。这时就需要建立有效的故障演练体系,让系统质量与团队能力可以持续增长。在本书
中,大家也可以了解到阿里在这方面的有效实践。
身处数字革命大潮中,我们能感受到技术的快速演进。当然,质量技术也在与时俱进。
很多记录在这本书中的实践,在出版时已经被更新,或者被更好的方法替代了。我们能做
的,一方面是把握变化背后的不变之道,另一方面是持续分享。
2019 年,阿里质量团队发起了 TICA 质量创新大会,与行业伙伴一起打造面向质量技
术创新前沿的论坛。TICA 的主题从 2019 年的“测思未来”,到 2020 年的“云端智测”,再
到 2021 年的“智测美好”,一直都把握住了质量技术的发展脉搏。我也希望有越来越多的
读者能够相会在 TICA,共同推动质量技术的持续进步。
美好质量,是我们的共同向往。
程立
阿里巴巴集团首席技术官
2022 年 2 月
|
|