[套装书]测试架构师修炼之道:从测试工程师到测试架构师 第2版+解决方案架构师修炼之道(2册)

作者
刘琛梅 等
丛书名
出版社
机械工业出版社
ISBN
9782112291458
简要
简介
内容简介书籍计算机书籍 ---------------------------8085073 - 测试架构师修炼之道:从测试工程师到测试架构师 第2版--------------------------- 本书并不是一本单方面讲授测试技术或者测试管理方面的书籍,旨在帮助广大奋斗在一线的测试工程师们系统梳理自己的测试技术并构建自己的测试体系,迅速升级为测试架构师!“测试策略”是本书的核心,通过大量策略把测试理念和各种测试技术串了起来,并讨论了该如何把测试技术和产品结合起来,如何确定测试目标、测试范围、测试的深度和广度、测试的重点和难点。 相较于上一版,本书主要的修改如下: 第1章对近年技术发展对测试的影响和对测试人员的新的要求进行重新规划介绍,比如敏捷思维、devops、全能测试理念,同时增加了对校招的介绍,更新了对测试环境的介绍和作者自己对测试的理解。 第2章主要增加了几个测试人员新的发展方向,包括产品、研发管理、组织变革等。 第3章新增测试核心、测试目标选择、测试质量评估等内容,同时更新了对测试架构师的认知,让本章内容更充实,更有实战性。 第4章新增对测试架构师基本能力和技术的介绍、对3种测试性能的介绍、对专项测试用例的介绍,同时补充了对自动化测试和测试方法的介绍。 第5章本章除5.2节部分内容外,其他内容或者为重写内容或者新增内容,比如改写了5.1节的沟通和协商的内容,新增了组织和管理测试、持续探索学习等相关内容。 第6章 新增了对测试策略与各个测试活动的关系的介绍,对其中部分案例进行更新。 第7章为新增章,主要介绍如何通过四步法制定测试策略。 第8章除了与第1版保持主题不变外,整体内容均进行了重写,主要介绍测试评估的方法和后期的调整策略。 第9章新增章,其中部分内容来自第1版的第7章和第8章,大部分内容则为新内容,主要介绍测试策略在实践中的应用,以案例解读为主。 . ---------------------------8084732 - 解决方案架构师修炼之道--------------------------- 本书首先介绍解决方案架构的基本原理、设计原则和属性,这些内容将帮助你理解解决方案架构如何使跨企业的软件项目受益。你将了解云迁移和应用程序现代化框架,并将使用微服务、事件驱动、基于缓存和无服务器模式来设计健壮的架构。然后,你将探索架构设计的主要考量,包括性能、可伸缩性、成本优化、安全性、卓越运营和DevOps。此外,你还将学习与大数据、机器学习和物联网相关的先进概念。书末,你将掌握架构设计文档和成为更好的解决方案架构师所必需的软技能。
目录
[套装书具体书目]
8084732 - 解决方案架构师修炼之道 - 9787111694441 - 机械工业出版社 - 定价 119
8085073 - 测试架构师修炼之道:从测试工程师到测试架构师 第2版 - 9787111697442 - 机械工业出版社 - 定价 109



---------------------------8085073 - 测试架构师修炼之道:从测试工程师到测试架构师 第2版---------------------------


前 言
第一部分 瓶颈:测试工程师该如何进行职业规划
第1章 测试工程师的“三年之痒” 3
1.1 软件测试发展简史 3
1.2 敏捷开发模式下的软件测试 4
1.3 测试人员面临的机遇和挑战 6
1.3.1 究竟是无用的测试,还是全能的测试 7
1.3.2 测试的困境和迷局 8
1.3.3 从质量守护者到产品赋能者 11
第2章 测试工程师的职业规划 14
2.1 测试人员的职业发展方向 14
2.1.1 测试人员在管理上的发展 15
2.1.2 测试人员在技术上的发展 16
2.1.3 角色和段位 17
2.1.4 测试人员在质量领域的发展 20
2.1.5 测试人员在研发工程效能领域的发展 22
2.2 测试工程师职业规划建议 25
2.2.1 做管理还是做技术 25
2.2.2 关于跳槽 27
2.2.3 不断提升影响力 28
第二部分 突破:向测试架构师的 目标迈进
第3章 测试架构师应该做和不应该做的事情 31
3.1 测试架构师需要关注和不需要关注的事情 31
3.1.1 在需求分析阶段 32
3.1.2 在测试分析和设计阶段 34
3.1.3 在测试执行阶段 36
3.1.4 在测试质量评估阶段 37
3.2 像测试架构师一样思考 39
3.3 测试管理者可以替代测试架构师吗 39
3.4 系统架构师可以替代测试架构师吗 40
第4章 测试架构师的知识能力模型 42
4.1 测试架构师必备的能力和知识体系 42
4.1.1 测试架构师必备的6个关键能力 43
4.1.2 测试架构师的知识体系 44
4.2 软件产品质量模型 46
4.2.1 为什么深入理解质量对测试如此重要 46
4.2.2 软件产品质量的8个属性 47
4.2.3 功能性 48
4.2.4 兼容性 50
4.2.5 安全性 51
4.2.6 可靠性 53
4.2.7 易用性 56
4.2.8 效率(性能) 59
4.2.9 可维护性 60
4.2.10 可移植性 62
4.3 基于质量的测试方法 63
4.3.1 理解测试类型 63
4.3.2 如何通过质量属性来探索测试方法 65
4.3.3 通过质量模型来确定测试深度和测试广度 66
4.4 功能性测试方法 66
4.4.1 什么是“运行” 66
4.4.2 单运行正常值输入法 68
4.4.3 单运行边界值输入法 68
4.4.4 多运行顺序执行法 69
4.4.5 多运行相互作用法 70
4.5 可靠性测试方法 71
4.5.1 异常值输入法 71
4.5.2 故障植入法 72
4.5.3 稳定性测试法 73
4.5.4 压力测试法 74
4.5.5 恢复测试法 76
4.6 性能测试方法 77
4.6.1 基线性能测试法 78
4.6.2 影响性能的因子测试法 82
4.6.3 场景性能测试法 86
4.7 易用性测试法 87
4.7.1 一致性测试法 88
4.7.2 可用性测试法 89
4.8 安全性测试方法 90
4.8.1 权限测试 91
4.8.2 参数校验测试 92
4.8.3 传输安全性测试 94
4.8.4 拒绝服务攻击安全性测试 95
4.8.5 安全性测试工具介绍 96
4.9 基于车轮图的测试分析方法 97
4.9.1 测试分析不等于测试设计 97
4.9.2 测试点不等于测试用例 98
4.9.3 产品测试车轮图 100
4.9.4 在MM图中使用车轮图 101
4.9.5 使用测试分析设计表来进行测试分析 102
4.10 基于模型的测试设计技术 103
4.10.1 测试设计四步法 104
4.10.2 对测试点进行分类 106
4.10.3 流程类测试设计——路径分析法 112
4.10.4 参数类测试设计——输入-输出表分析法 129
4.10.5 数据类测试设计——等价类和边界值分析法 135
4.10.6 组合类测试设计——正交分析法 140
4.10.7 错误推断法 145
4.11 控制测试用例的粒度 146
4.11.1 测试点的组合和拆分 146
4.11.2 策略覆盖 147
4.12 影响测试设计效果的因素 151
4.12.1 有效澄清和确认需求 152
4.12.2 有针对性的可测试性需求 153
4.13 基于场景的测试方法 157
4.13.1 场景和场景测试 157
4.13.2 使用场景测试模型来进行测试分析 160
4.14 探索式测试 166
4.14.1 什么是探索式测试 166
4.14.2 探索式测试的基本思想:CPIE思维模型 167
4.14.3 选择合适的探索式测试方法 168
4.14.4 开展探索式测试 171
4.15 自动化测试 174
4.15.1 关于自动化测试的经验和教训 175
4.15.2 自动化测试分层 181
4.15.3 自动化测试框架 184
4.15.4 如何有效开展自动化测试 189
4.15.5 如何评估自动化的收益 193
4.15.6 自动化测试成熟度模型 194
第5章 测试架构师的软能力修炼 197
5.1 沟通和协商 198
5.1.1 知识的诅咒 198
5.1.2 产品测试中的沟通原则 199
5.1.3 通过沟通来获得对产品测试有用的信息 204
5.2 写出漂亮的测试用例 206
5.2.1 统一测试用例编写风格 206
5.2.2 测试用例编写风格指导 207
5.2.3 如何编写测试用例案例集 208
5.3 组织和管理测试用例 215
5.3.1 测试用例模板 215
5.3.2 基于特性树组织测试用例 217
5.3.3 维护测试用例 220
5.4 持续学习和探索 222
第三部分 修炼:测试架构师的核心技能
第6章 如何制定测试策略 227
6.1 什么是测试策略 228
6.1.1 测试的核心是什么 228
6.1.2 测试策略与测试方针 229
6.1.3 测试策略与测试计划 229
6.1.4 测试策略与测试方案 229
6.2 四步测试策略制定法 232
6.2.1 基于产品质量的测试策略 232
6.2.2 基于产品特性价值的测试策略 232
6.2.3 四步测试策略制定法 233
6.3 产品质量评估模型 238
6.3.1 测试覆盖度分析 238
6.3.2 测试过程分析 240
6.3.3 缺陷分析 243
6.3.4 在测试全流程中使用产品质量评估模型 244
6.4 组合缺陷分析技术 245
6.4.1 组合缺陷分析模型 245
6.4.2 缺陷趋势分析 248
6.4.3 缺陷密度 253
6.4.4 缺陷修复率 254
6.4.5 缺陷年龄分析 256
6.4.6 缺陷触发因素分析 259
6.4.7 产品缺陷趋势预判技术 261
6.5 特性价值分析技术 265
6.5.1 你知道测试的产品是如何赚钱的吗 265
6.5.2 从价值角度来对特性进行分类 266
6.5.3 基于特性价值来确定测试重点 270
6.6 风险分析技术 272
6.6.1 风险识别 272
6.6.2 风险评估 275
6.6.3 风险应对 277
6.6.4 历史/继承特性分析 279
6.7 不同研发模式下的测试分层技术 285
6.7.1 瀑布模式 285
6.7.2 敏捷模式 286
6.7.3 DevOps 289
6.7.4 瀑布下的测试分层 293
6.7.5 敏捷模式下的测试分层 295
6.7.6 敏捷转型下的测试分层 297
6.8 测试方案模板 300
第7章 制定基于产品质量的测试策略 301
7.1 项目背景 304
7.2 制定总体测试策略 305
7.2.1 确定特性的质量目标 305
7.2.2 对项目整体进行风险分析 306
7.2.3 确定测试优先级 311
7.2.4 确定测试深度和广度 312
7.2.5 确定研发模式和测试分层 315
7.2.6 确定关键测试活动的出入口准则 322
7.2.7 预判产品缺陷趋势 324
7.2.8 回顾 325
7.3 制定测试设计策略 327
7.3.1 在测试设计时考虑测试深度和广度 327
7.3.2 给测试用例划分等级 329
7.3.3 有效的测试设计评审 331
7.3.4 回顾 333
第8章 产品质量评估和测试策略调整 334
8.1 确认和计划的偏差 335
8.1.1 尽量避免小瀑布迭代 336
8.1.2 如何补救延期、阻塞和返工等问题 338
8.1.3 如何处理实际交付的内容和计划的偏差 339
8.1.4 在适应变化的情况下依然保持版本迭代节奏 341
8.2 选择测试用例 343
8.2.1 选择接收测试用例的策略和原则 344
8.2.2 选择不同阶段的测试用例的策略和原则 344
8.2.3 选择回归测试用例的策略和原则 345
8.3 测试过程跟踪 347
8.3.1 测试执行顺序和策略覆盖 348
8.3.2 确定缺陷修复的优先级 350
8.3.3 非必现缺陷处理 352
8.3.4 缺陷预判和调整测试策略 354
8.4 产品质量评估 357
8.4.1 质量指标分析 358
8.4.2 建立特性质量档案 362
8.4.3 组合缺陷分析 362
8.4.4 非测试用例发现缺陷的原因分析 364
8.4.5 遗留缺陷分析 365
第9章 基于价值的测试策略 368
9.1 再谈测试策略 368
9.2 不同产品阶段下的测试策略 371
9.3 探索式测试策略 372
9.3.1 根据不同的特性选择适合的探索式测试方法 372
9.3.2 将基于价值的测试策略和基于产品的测试策略组合起来 372
9.3.3 启发式测试策略模型 375
9.4 自动化持续测试策略 375
9.4.1 持续测试和自动化测试 377
9.4.2 自动化持续测试策略 378
9.4.3 将自动化持续测试和产品发展阶段相结合 379



---------------------------8084732 - 解决方案架构师修炼之道---------------------------


本书赞誉
推荐序一
推荐序二
推荐序三
推荐序四
译者序
序言
前言
作者简介
审校者简介
第1章 解决方案架构的含义 1
1.1 什么是解决方案架构 2
1.2 解决方案架构的演进 4
1.3 解决方案架构为何如此重要 5
1.4 解决方案架构的益处 5
1.4.1 满足业务需求和交付质量 7
1.4.2 选择最佳技术平台 7
1.4.3 处理解决方案的约束和问题 7
1.4.4 协助资源和成本管理 8
1.4.5 管理解决方案交付和项目生命周期 8
1.4.6 解决非功能性需求 8
1.5 公有云中的解决方案架构 9
1.5.1 什么是公有云 9
1.5.2 公有云、私有云和混合云 10
1.5.3 公有云架构 10
1.5.4 公有云供应商和云服务产品 11
1.6 小结 12
第2章 组织中的解决方案架构师 14
2.1 解决方案架构师角色的类型 15
2.1.1 企业解决方案架构师 17
2.1.2 解决方案架构师 17
2.1.3 技术架构师 18
2.1.4 云架构师 18
2.1.5 架构师布道者 18
2.1.6 基础设施架构师 19
2.1.7 网络架构师 19
2.1.8 数据架构师 20
2.1.9 安全架构师 21
2.1.10 DevOps架构师 21
2.2 理解解决方案架构师的职责 22
2.2.1 分析用户需求 22
2.2.2 定义非功能性需求 23
2.2.3 与利益相关者的接触与合作 25
2.2.4 处理各种架构约束 25
2.2.5 技术选型 27
2.2.6 概念验证和原型开发 27
2.2.7 设计解决方案并持续交付 28
2.2.8 确保发布后的可操作性和可维护性 29
2.2.9 担任技术布道者 30
2.3 敏捷组织中的解决方案架构师 30
2.3.1 为什么选择敏捷方法论 30
2.3.2 敏捷宣言 31
2.4 小结 35
第3章 解决方案架构的属性 36
3.1 可伸缩性和弹性 37
3.1.1 容量伸缩困境 38
3.1.2 架构伸缩 38
3.1.3 静态内容伸缩 40
3.1.4 服务器机群弹性 40
3.1.5 数据库伸缩 40
3.2 高可用性和韧性 41
3.3 容错和冗余 43
3.4 灾难恢复与业务连续性 44
3.5 可扩展性与可重用性 45
3.6 易用性与可访问性 46
3.7 可移植性与互操作性 47
3.8 卓越运维与可维护性 48
3.9 安全性与合规性 49
3.9.1 认证和授权 49
3.9.2 Web安全 50
3.9.3 网络安全 50
3.9.4 基础设施安全 50
3.9.5 数据安全 50
3.10 成本优化与预算 51
3.11 小结 52
第4章 解决方案架构的设计原则 53
4.1 工作负载的伸缩 54
4.1.1 可预测伸缩 54
4.1.2 被动伸缩 56
4.2 构建有韧性的架构 56
4.3 性能设计 58
4.4 使用可替换资源 59
4.5 考虑松耦合 60
4.6 考虑服务而非服务器 62
4.7 根据合理的需求选择合适的存储 63
4.8 考虑数据驱动的设计 65
4.9 克服约束 65
4.10 安全无处不在 67
4.11 自动化一切 67
4.12 小结 68
第5章 云迁移和混合云架构设计 70
5.1 云原生架构的好处 71
5.2 创建云迁移策略 72
5.2.1 Lift and Shift方法 73
5.2.2 云原生方法 75
5.2.3 Retain or Retire方法 76
5.3 云迁移的步骤 77
5.3.1 发现工作负载 78
5.3.2 分析信息 79
5.3.3 制订迁移计划 80
5.3.4 设计应用程序 83
5.3.5 执行应用程序迁移上云 85
5.3.6 集成、验证和切换 87
5.3.7 运维云应用程序 89
5.3.8 云上应用程序优化 90
5.4 创建混合云架构 91
5.5 设计云原生架构 92
5.6 主流的公有云 94
5.7 小结 95
5.8 进一步阅读 95
第6章 解决方案架构设计模式 96
6.1 构建N层架构 97
6.1.1 Web层 97
6.1.2 应用层 99
6.1.3 数据库层 99
6.2 创建基于SaaS的多租户架构 99
6.3 构建无状态和有状态的架构 101
6.4 理解SOA 103
6.4.1 基于SOAP的Web服务架构 103
6.4.2 RESTful Web服务架构 105
6.4.3 构建基于SOA的电子商务网站架构 106
6.5 构建无服务器架构 107
6.6 创建微服务架构 109
6.7 构建基于队列的架构 111
6.7.1 队列链表模式 112
6.7.2 作业观察者模式 113
6.8 创建事件驱动架构 114
6.8.1 发布者/订阅者模型 114
6.8.2 事件流模型 115
6.9 构建基于缓存的架构 116
6.9.1 三层Web架构中的缓存分发模式 117
6.9.2 重命名分发模式 119
6.9.3 缓存代理模式 120
6.9.4 重写代理模式 121
6.9.5 应用缓存模式 122
6.10 理解断路器模式 123
6.11 实现隔板模式 124
6.12 构建浮动IP模式 125
6.13 使用容器部署应用程序 126
6.13.1 容器的好处 127
6.13.2 容器化部署 128
6.14 应用程序架构中的数据库处理 129
6.15 避免解决方案架构中的反模式 132
6.16 小结 133
第7章 性能考量 134
7.1 架构性能的设计原则 134
7.1.1 降低延迟 135
7.1.2 提高吞吐量 136
7.1.3 处理并发问题 137
7.1.4 使用缓存 138
7.2 性能优化的技术选型 139
7.2.1 计算能力选型 139
7.2.2 选择存储 144
7.2.3 选择数据库 147
7.2.4 选择网络 149
7.3 管理性能监控 152
7.4 小结 153
第8章 安全考量 155
8.1 架构安全的设计原则 155
8.1.1 实现认证和授权控制 156
8.1.2 安全无处不在 156
8.1.3 缩小爆炸半径 157
8.1.4 时刻监控和审计一切 157
8.1.5 自动化一切 157
8.1.6 数据保护 157
8.1.7 事件响应准备 158
8.2 架构安全技术选型 158
8.2.1 用户身份和访问管理 158
8.2.2 处理网络安全问题 165
8.2.3 保护应用程序及其基础设施 169
8.2.4 数据安全 173
8.3 安全和合规认证 178
8.4 云的共享安全责任模型 178
8.5 小结 180
第9章 架构可靠性考量 182
9.1 架构可靠性的设计原则 182
9.1.1 使系统自愈 183
9.1.2 实现自动化 183
9.1.3 创建分布式系统 184
9.1.4 容量监控 184
9.1.5 验证恢复过程 184
9.2 架构可靠性的技术选型 185
9.2.1 规划RTO和RPO 185
9.2.2 数据复制 186
9.2.3 规划灾难恢复 188
9.2.4 灾难恢复的最佳实践 195
9.3 利用云来提高可靠性 196
9.4 小结 197
第10章 卓越运维考量 198
10.1 卓越运维的设计原则 199
10.1.1 自动化运维 199
10.1.2 进行增量和可逆的变更 199
10.1.3 预测并响应故障 200
10.1.4 从错误中学习并改进 200
10.1.5 持续更新运维手册 200
10.2 卓越运维的技术选型 201
10.2.1 卓越运维的规划阶段 201
10.2.2 卓越运维的执行阶段 204
10.2.3 卓越运维的改进阶段 210
10.3 在公有云中实现卓越运维 212
10.4 小结 213
第11章 成本考量 215
11.1 成本优化的设计原则 215
11.1.1 计算总拥有成本 216
11.1.2 规划预算和预测 217
11.1.3 管理需求和服务 218
11.1.4 跟踪支出 219
11.1.5 持续成本优化 219
11.2 成本优化的技术选型 220
11.2.1 降低架构复杂度 220
11.2.2 提高IT效率 221
11.2.3 实现标准化和架构治理 222
11.2.4 成本监控和报告 224
11.3 公有云上的成本优化 227
11.4 小结 228
第12章 DevOps和解决方案架构框架 230
12.1 DevOps介绍 231
12.2 DevOps的好处 231
12.3 DevOps的组成部分 232
12.3.1 CI/CD 233
12.3.2 持续监控和改进 234
12.3.3 基础设施即代码 235
12.3.4 配置管理 235
12.4 什么是DevSecOps 236
12.5 结合DevSecOps和CI/CD 237
12.6 实施CD策略 238
12.6.1 就地部署 238
12.6.2 滚动部署 238
12.6.3 蓝绿部署 238
12.6.4 红黑部署 239
12.6.5 不可变部署 240
12.7 在CI/CD流水线中实施持续测试 240
12.8 CI/CD的DevOps工具 242
12.8.1 代码编辑器 243
12.8.2 源代码管理 243
12.8.3 CI服务器 243
12.8.4 代码部署 245
12.8.5 代码流水线 246
12.9 实施DevOps最佳实践 247
12.10 小结 248
第13章 数据工程和机器学习 249
13.1 什么是大数据架构 250
13.2 大数据处理流水线设计 251
13.3 数据摄取 252
13.3.1 数据摄取的技术选型 253
13.3.2 数据摄取上云 254
13.4 数据存储 255
13.5 数据处理和分析 262
13.6 数据可视化 265
13.7 理解物联网 266
13.8 什么是机器学习 267
13.9 使用数据科学和机器学习 268
13.10 评估机器学习模型:过拟合与欠拟合 270
13.11 了解监督学习和无监督学习 270
13.12 小结 272
第14章 遗留系统架构设计 273
14.1 遗留系统面临的挑战 274
14.1.1 难以满足用户需求 274
14.1.2 维护和更新费用较高 275
14.1.3 缺乏技能和文档 275
14.1.4 存在安全风险 276
14.1.5 无法兼容其他系统 276
14.2 遗留系统现代化改造策略 277
14.2.1 系统现代化改造的好处 277
14.2.2 遗留系统的评估 279
14.2.3 现代化改造方案 279
14.2.4 文档和支持 280
14.3 遗留系统现代化改造技术 280
14.3.1 封装、重新托管和重新平台化 281
14.3.2 重构和重新架构 282
14.3.3 重新设计和替换 282
14.4 遗留系统的云迁移策略 283
14.5 小结 284
第15章 解决方案架构文档 285
15.1 文档目的 285
15.2 文档视图 286
15.3 文档结构 288
15.3.1 解决方案概述 289
15.3.2 业务上下文 290
15.3.3 概念解决方案概述 291
15.3.4 解决方案架构 292
15.3.5 解决方案交付 295
15.3.6 解决方案管理 295
15.3.7 附录 296
15.4 解决方案架构的IT采购文档 296
15.5 小结 297
第16章 学习软技能,成为更优秀的解决方案架构师 298
16.1 掌握售前技能 299
16.2 向企业高管汇报 300
16.3 主人翁意识和责任心 301
16.4 定义战略执行以及目标与关键成果 301
16.5 着眼于大局 302
16.6 灵活性和适应性 303
16.7 设计思维 303
16.8 做一个动手写代码的程序员 305
16.9 持续学习,不断进步 306
16.10 成为他人的导师 307
16.11 成为技术布道者和思想领袖 308
16.12 小结 308

推荐

车牌查询
桂ICP备20004708号-3