注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件工程及软件方法学深度实践微服务测试

深度实践微服务测试

深度实践微服务测试

定 价:¥99.00

作 者: 付彪,秦五一,齐磊,雷辉 著
出版社: 机械工业出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787111708216 出版时间: 2022-07-01 包装: 平装
开本: 16开 页数: 334 字数:  

内容简介

  本书是4位作者服务多个大中型知名企业后总结的微服务测试方法论与实战经验,内容翔实、鲜见。全书内容分9章,涵盖测试策略、接口与界面自动化测试、契约测试、性能测试、微服务监控、服务虚拟化、混沌工程、安全测试。一本书破解当下测试工作的众多难题,可为微服务和分布式系统的质量保障提供一站式解决方案。本书内容具体如下。第1章梳理各种微服务测试工作的价值与要点,帮助读者快速建立测试工作全局视角。第2章剖析微服务环境下制定测试策略的要点、影响因素与实战技巧。第3章介绍接口测试与页面自动化测试的主要思路与常见问题。第4章重点讲解如何基于Pact与Spring Cloud Contract进行契约测试实践。第5章分析性能测试在微服务和传统软件环境下的区别,并介绍全链路压测的实施思路要点。第6章介绍微服务监控的概念、模式分类,以及监控实践、系统搭建与容器化部署。第7章重点介绍如何在微服务环境下运用服务虚拟化技术来解决各种服务依赖问题。第8章介绍混沌工程的价值、实施先决条件、原则与实施方法。第9章包括安全测试的需求分析、测试人员角色定位以及多种测试工具实战。

作者简介

  付彪Thoughtworks总监级质量分析咨询师,常年专注于软件测试与软件质量保障领域。精通经典测试理论、自动化测试设计与实施,以及通用型软件系统前后端的各种测试活动,在敏捷测试和微服务系统测试方面有非常丰富的实践经验。长期关注工程效能与新兴技术对传统软件测试的革新,坚持通过博客和开源软件助力行业和社区发展。秦五一国内某大厂软件教练,曾任Thoughtworks专家级质量分析咨询师。曾服务客户包括IBM、华为、澳洲电信、HSBC、Suncorp以及REA等。对传统测试理论和业界新兴测试技术有较为深入的研究。当前关注DevOps转型落地。曾担任中国移动互联网测试大会、全球软件与运维技术峰会等大会讲师,并活跃在多个软件技术社区。齐磊HSBC测试咨询专家,曾任Thoughtworks专家级质量分析咨询师。擅长敏捷测试、测试开发、DevOps等。当前关注混沌工程与DevOps在测试领域的应用与研究。雷辉Thoughtworks高级质量保障工程师。拥有多年研发与测试经验以及丰富的大型商业软件测试项目实战经验,精通自动化、性能和探索式测试,以在软件中发现各种隐藏Bug为乐。合著有《Web测试囧事》。

图书目录

第1章 微服务测试概述1
1.1 微服务测试的要点1
1.1.1 一份有效的测试策略1
1.1.2 一个构建接口层数据的好办法2
1.1.3 端到端测试,减少耗时2
1.1.4 把握微服务系统整体质量3
1.1.5 隔离依赖,实现独立测试4
1.1.6 守住第一道安全防护层4
1.2 微服务中的自动化测试5
1.3 本章小结6

第2章 微服务测试策略7
2.1 传统测试策略与敏捷测试策略7
2.1.1 传统测试策略7
2.1.2 敏捷测试策略9
2.2 微服务中的测试策略14
2.2.1 测试象限14
2.2.2 测试金字塔16
2.2.3 环境管理策略19
2.2.4 流水线策略22
2.3 影响微服务测试策略制定的因素23
2.3.1 质量目标24
2.3.2 被测系统的具体实现与可测试性24
2.3.3 人员能力25
2.3.4 开发与测试的协作模式25
2.3.5 产品演进的不同阶段26
2.4 微服务的测试策略实战27
2.4.1 迭代027
2.4.2 迭代N35
2.4.3 重构37
2.5 本章小结38

第3章 接口测试及界面自动化测试39
3.1 接口测试简介39
3.1.1 接口说明文档与测试用例类型40
3.1.2 接口测试重点42
3.2 接口自动化测试实战46
3.3 接口测试的常见问题56
3.4 前端界面测试思路57
3.5 前端界面自动化测试59
3.6 本章小结64

第4章 契约测试65
4.1 初识契约测试65
4.2 基于Pact的契约测试实战67
4.2.1 Pact的测试理念67
4.2.2 被测应用69
4.2.3 消费者Miku服务与生产者服务间的契约测试73
4.2.4 Gradle的相关配置88
4.2.5 消费者Nanoha服务与生产者服务间的契约测试90
4.2.6 验证我们的测试98
4.3 基于Spring Cloud Contract的契约测试实践99
4.3.1 认识Spring Cloud Contract99
4.3.2 验证被测微服务系统102
4.3.3 在生产者服务端的测试102
4.3.4 在消费者服务端的测试110
4.4 契约测试高阶解惑112
4.4.1 关于测试的表述113
4.4.2 为什么要做契约测试114
4.4.3 契约测试和接口测试、集成测试的区别118
4.4.4 契约测试可以替代集成测试吗120
4.4.5 关于Pact和Spring Cloud Contract的博弈121
4.4.6 消费者服务端的集成测试需要做到什么程度122
4.4.7 关于“生产者驱动的契约测试”123
4.5 本章小结124

第5章 性能测试125
5.1 接口的性能测试125
5.1.1 性能测试难在哪里125
5.1.2 基本概念126
5.1.3 测试方式分类127
5.1.4 测试工具128
5.1.5 性能测试场景129
5.1.6 测试过程131
5.1.7 性能瓶颈分析132
5.2 全链路压测135
5.2.1 实施思路136
5.2.2 实施过程137
5.3 做好性能测试能否成为资深测试专家141
5.4 本章小结142

第6章 微服务监控143
6.1 了解微服务监控143
6.1.1 为什么要监控你的微服务144
6.1.2 微服务监控与传统监控的区别145
6.2 微服务监控模式的分类146
6.2.1 健康检查146
6.2.2 服务日志监控149
6.2.3 链路追踪151
6.2.4 监控指标156
6.3 微服务监控实践162
6.3.1 利用Spring Boot Actuator进行服务监控162
6.3.2 Spring Boot Actuator结合
   Prometheus和Grafana进行可视化监控168
6.3.3 利用docker-compose快速搭建监控系统169
6.3.4 Kubernetes环境下SkyWalking容器化部署175
6.4 本章小结180

第7章 服务虚拟化181
7.1 服务虚拟化价值与简单示例181
7.2 基于WireMock的服务虚拟化184
7.2.1 模拟系统184
7.2.2 基于Java的基本使用189
7.2.3 基于独立执行文件的基本使用194
7.2.4 录制与回放197
7.2.5 异常模拟204
7.2.6 状态行为208
7.3 基于Hoverfly的服务虚拟化213
7.3.1 理解Hoverfly的服务方式214
7.3.2 选择合适的工作模式216
7.3.3 深入simulation的细节225
7.3.4 使用模板实现动态响应228
7.3.5 Hoverfly的状态行为233
7.3.6 使用中间件244
7.4 提供Web UI的轻量级服务虚拟化方案253
7.4.1 最简单的交互式服务虚拟化工具:Mockit253
7.4.2 支持团队协作的服务虚拟化工具:YApi256
7.5 服务虚拟化技术的灵活运用264
7.5.1 在集成测试中的运用264
7.5.2 在性能测试中的运用265
7.5.3 在视觉测试中的运用265
7.5.4 在契约测试中的运用266
7.5.5 在UI自动化测试中的运用266
7.5.6 不要滥用服务虚拟化267
7.6 本章小结268

第8章 混沌工程269
8.1 初识混沌工程269
8.1.1 混沌工程的起源269
8.1.2 微服务为什么需要混沌工程270
8.1.3 混沌工程的两类场景270
8.2 混沌工程实验与测试273
8.2.1 混沌工程实验和传统测试的区别与联系273
8.2.2 混沌工程与故障注入测试的区别274
8.2.3 QA In Production与混沌工程274
8.3 实施混沌工程的先决条件275
8.3.1 我的项目需要实施混沌工程吗275
8.3.2 实施混沌工程的先决条件275
8.4 混沌工程原则277
8.4.1 建立系统稳定状态的假设278
8.4.2 用多样的现实世界事件做验证278
8.4.3 在生产环境运行实验280
8.4.4 利用CI/CD进行混沌工程实验281
8.4.5 最小化爆炸半径283
8.5 设计混沌工程实验284
8.5.1 实验可行性评估285
8.5.2 观测指标设计与对照287
8.5.3 实验场景设计287
8.6 混沌工程实践288
8.6.1 Chaos Monkey实践288
8.6.2 Chaos Blade实践294
8.6.3 Chaos Mesh实践297
8.7 本章小结303

第9章 安全测试304
9.1 安全测试需求304
9.1.1 基于功能的安全测试需求306
9.1.2 基于风险的安全测试需求307
9.2 测试人员的定位308
9.2.1 测试人员的职责308
9.2.2 测试人员的角色309
9.2.3 安全内建310
9.3 测试工具与实战312
9.3.1 被测微服务系统示例312
9.3.2 SAST工具之SonarQube实战312
9.3.3 DAST工具之OWASP ZAP实战323
9.3.4 SCA工具之Dependency Check实战329
9.3.5 渗透测试工具简介332
9.4 本章小结334
后记335

本目录推荐