Mountebank微服务测试 布兰登 贝耶斯 微服务设计 模式微服务设计 自学参考手册 微服务测试pdf下载

Mountebank微服务测试 布兰登 贝耶斯 微服务设计 模式微服务设计 自学参考手册 微服务测试百度网盘pdf下载

作者:
简介:Mountebank微服务测试 布兰登 贝耶斯 微服务设计 模式微服务设计 自学参考手册 微服务测试
出版社:
出版时间:
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

 

 书名:  Mountebank微服务测试
 出版社:  清华大学出版社
 出版日期  2019
 ISBN号:  9787302540892
 

《Mountebank微服务测试》主要介绍如何使用mountebank测试微服务,通过阅读,可以深入了解mountebank的全部功能以及服务虚拟化的适用范围。无论是微服务的开发工程师,还是进行QA或者性能测试的测试工程师,以及将客户需求转换为实际可执行项目的解决方案架构师,都适合阅读。

1. 服务虚拟化的核心概念;
2. 使用屏蔽响应进行测试;
3.mountebank编程;
4.性能测试。

Brandon Byars是ThoughtWorks公司的首席顾问,也是mountebank的创建者和维护者。他在IT领域具有20年的经验,曾担任开发人员、DBA、架构师和客户经理。当他不再热衷于测试自动化时,他专注于将思维应用到大规模开发中,并在我们已经打开的潘多拉技术盒的世界中找到重新发现人类意义的方法。

要测试一个正在变化和增长的实时微服务,即使是在实验室单独测试每个服务,也颇具挑战性和潜在。幸运的是,可以使用mountebank模拟分布式微服务应用程序的组件,以便在测试单个服务时能够更接近运行时条件。
《Mountebank微服务测试》介绍了服务虚拟化的强大功能。作者Brandon Byars以独特的视角介绍了微服务应用程序设计和先进的测试实践。在使用mountebank的imposter、响应、行为和可编程性的过程中,你将进一步理解微服务。掌握本书中介绍的有效测试技术后,你将能熟练地使用微服务进行测试,并且能编写出高质量的应用程序。

第Ⅰ部分  起    步
第1章  测试微服务   3
1.1  微服务刷新器   4
1.1.1  微服务路径   5
1.1.2  微服务和组织结构   7
1.2  端到端测试的问题   9
1.3  了解服务虚拟化   10
1.3.1  使用API逐个设置测试   12
1.3.2  使用持久数据存储   12
1.3.3  记录和重放   13
1.4  mountebank介绍   14
1.5  服务虚拟化工具生态   18
1.6  本章小结   19
第2章  体验mountebank   21
2.1  设置示例   22
2.2  HTTP和mountebank:入门   23
2.3  虚拟化产品目录服务   26
2.4 个测试   31
2.5  本章小结   38

第Ⅱ部分  使用mountebank
第3章  使用屏蔽响应进行测试   43
3.1  屏蔽响应的基础   44
3.1.1  默认响应   45
3.1.2  了解默认响应的工作方式   48
3.1.3  更改默认响应   49
3.1.4  循环响应   50
3.2  HTTPS imposter   52
3.2.1  设置可信的HTTPS imposter   55
3.2.2  使用相互身份验证   57
3.3  在配置文件中保存响应   58
3.4  本章小结   62
第4章  使用谓词发送不同的响应   65
4.1  谓词基础   66
4.1.1  谓词的类型   68
4.1.2  匹配对象请求字段   73
4.1.3  deepEquals谓词   74
4.1.4  匹配多值字段   75
4.1.5  exists谓词   77
4.1.6  连接点   78
4.1.7  谓词类型的完整列表   79
4.2  参数化谓词   80
4.3  在JSON值中使用谓词   80
4.3.1  使用直接JSON谓词   81
4.3.2  使用JSONPath选择 JSON值   81
4.4  选择XML值   83
4.5  本章小结   86
第5章  添加记录/重放行为   87
5.1  设置代理   87
5.2  生成正确的谓词   91
5.2.1  使用predicateGenerators创建谓词   91
5.2.2  添加谓词参数   93
5.3  为同一请求捕获多个响应   96
5.4  重放代理的方法   100
5.5  配置代理   101
5.5.1  使用相互身份验证   102
5.5.2  添加自定义标题   103
5.6  代理用例   104
5.6.1  使用代理作为回退   104
5.6.2  将HTTPS转换为HTTP   106
5.7  本章小结   107
第6章  mountebank编程   109
6.1  创建自己的谓词   110
6.2  创建自己的动态响应   115
6.2.1  添加状态   116
6.2.2  添加异步   118
6.2.3  确定响应与谓词注入之间的关系   127
6.3  注意:安全很重要   127
6.4  调试提示   128
6.5  本章小结   129
第7章  添加行为   131
7.1  理解行为   131
7.2  修饰一个响应   132
7.2.1  使用decorate函数   133
7.2.2  为保存的代理响应添加修饰   134
7.2.3  通过shellTransform添加中间件   137
7.3  为响应添加   139
7.4  多次重复响应   140
7.5  替换响应中的内容   141
7.5.1  将请求数据复制到响应   141
7.5.2  从外部数据源查找数据   148
7.6  完整的行为列表   152
7.7  本章小结   152
第8章  协议   153
8.1  协议在mountebank中的工作方式   154
8.2  TCP入门   155
8.3  存根基于文本的TCP RPC   156
8.3.1  创建基本的TCPimposter   157
8.3.2  创建TCP代理   159
8.3.3  匹配和操作XML载荷   160
8.4  二进制支持   161
8.4.1  使用二进制模式进行Base64编码   162
8.4.2  在二进制模式下使用谓词   163
8.5  虚拟化.NET远程服务   164
8.5.1  创建简单的.NET Remoting客户端   164
8.5.2  虚拟化.NET Remoting服务器   167
8.5.3  如何告诉mountebank消息结束的位置   171
8.6  本章小结   175
第Ⅲ部分  关 闭 循 环
第9章  微服务的安全   179
9.1  一个持续的交付刷新器   179
9.1.1  基于微服务的CD测试策略   181
9.1.2  将测试策略映射到部署管道   183
9.2  创建测试管道   184
9.2.1  创建单元测试   186
9.2.2  创建服务测试   189
9.2.3  平衡服务虚拟化与合约测试   193
9.2.4  探索性测试   196
9.3  本章小结   198
第10章  mountebank性能测试   199
10.1  为什么服务虚拟化支持性能测试   200
10.2  定义你的场景   202
10.3  捕获测试数据   203
10.3.1  捕获响应   204
10.3.2  捕捉实际   206
10.3.3  模拟随机的波动   207
10.4  运行性能测试   207
10.5  扩展mountebank   210
10.6  本章小结   212

我用mountebank编写了测试微服务的程序,展示了服务虚拟化如何帮助你测试微服务,以及mountebank如何成为一个强大的服务虚

拟化工具。这就需要对mountebank有一个深入的了解。《Mountebank微服务测试》的中间部分专门讨论这个主题,但是许多经验都

适用于任何服务虚拟化工具。
《Mountebank微服务测试》读者对象
mountebank是一种对开发人员友好的工具,它使开发人员成为使用mountebank测试微服务的主要受众。希望读者对测试自动化有一

些了解,但是我避免在《Mountebank微服务测试》中使用任何语言特性来重点关注工具和方法。自动化友好的QA测试人员也会

发现《Mountebank微服务测试》的价值,那些专门从事性能测试的人员也是如此。后,服务虚拟化越来越成为一个体系结构问题

,在这些页面中,我希望为解决方案架构师提供正确决策所需的论据。
《Mountebank微服务测试》内容安排
《Mountebank微服务测试》分为三部分10章。
●  第Ⅰ部分介绍了分布式的总体测试原理。
第1章简要介绍了微服务,并对传统的端到端测试进行了评论。它有助于解释服务虚拟化如何适应微服务的世界,并为mountebank提

供一个心理模型。
第2章建立了一个示例体系结构,我们将在《Mountebank微服务测试》中反复讨论,并展示如何使用mountebank来自动执行确定性测

试,尽管它是分布式体系结构。
●  第Ⅱ部分深入介绍mountebank,让你全面了解它的功能。
第3章提供了了解HTTP和HTTPS环境中基本mountebank响应的基础知识。它还描述了通过配置文件管理测试数据的基本方法。
第4章探讨了谓词——mountebank对不同类型请求的不同响应方式。还介绍mountebank关于匹配XML和JSON的功能。
第5章介绍mountebank的记录和重放功能。mountebank使用真实的代理来捕获真实的测试数据。
第6章展示如何通过使用一个称为注入的特性在中编写你自己的谓词和响应来对mountebank本身编程。我们将研究注入如

何帮助解决CORS和OAuth握手中的一些棘手问题,包括虚拟化GitHub的公共API。
第7章通过研究应用于响应的行为,对mountebank引擎的核心功能进行了详细介绍。行为允许用户添加,从外部源查找数据以及

执行大量其他转换步骤。
第8章展示第3~7章中的所有概念如何延伸到HTTPS。mountebank的引擎是协议不可知的,我们给出了基于TCP的示例,包括扩展

的.NET Remoting场景。
●  第Ⅲ部分后退一步,将服务虚拟化放在更广泛的上下文中。
第9章探讨微服务的一个示例测试管道,从单元测试到手动探索测试,并展示了服务虚拟化的适用和不适用之处。
第10章说明服务虚拟化如何帮助性能测试。它包括一个虚拟化公共可用API的完整例子。
关于代码
《Mountebank微服务测试》使用了一些代码示例来帮助说明这些概念。其中一些是假设的(见第4章),一些是基于虚拟化的真实公共

API(见第6章和第10章),还有一些是非常笼统的(见第8章)。我尽力让这些例子在服务虚拟化可以解决的各种问题中通俗易懂,这不

是件容易的事。有些问题很容易理解,但有些,比如虚拟化返回二进制数据的.NET Remoting服务,则不好理解。我希望保持足够的

幽默感,让你对容易出现的问题保持兴趣,对于复杂的行为,给你足够的感觉,让你有能力自己创新。

图书论坛
购买《Mountebank微服务测试》包括访问Manning 出版社运行的私人Web论坛,你可以在该论坛上对《Mountebank微服务测试》

发表评论、提出技术问题以及获得作者和其他用户的帮助。要访问论坛,请访问www.manning.com/books/testing-microservices-

Manning对读者的承诺是提供使读者之间以及读者和作者之间进行有意义的对话的场所。作者对论坛的贡献仍然是自愿的,但这不代

表作者承诺任何具体的参与数量。我们建议你问作者一些有挑战性的问题,来引起他的兴趣。

^_^:4e6b8fac256670980c90c2071269678f