OpenStack最佳实践——测试与CI/CD
  • 推荐0
  • 收藏1
  • 浏览1.4K

OpenStack最佳实践——测试与CI/CD

徐超 (作者) 

  • 书  号:978-7-121-31034-8
  • 出版日期:2017-04-01
  • 页  数:316
  • 开  本:16(185*235)
  • 出版状态:图书立项
  • 维护人:杨中兴
目前,以云计算等为代表的新兴技术得到了大量的运用与普及。同时,凭借着众多极其独特的优势,OpenStack业已成为开源云计算技术领域的既定事实标准。
《OpenStack最佳实践——测试与CI/CD》是一本介绍OpenStack测试和CI/CD实践的书,基于此,《OpenStack最佳实践——测试与CI/CD》内容以实践操作为主,从理论到实践,循序渐进,依次讲解了DevOps和CI/CD的理论概念;软件测试基础和有效设计OpenStack测试用例的方法;如何参与OpenStack社区贡献及其沟通交流,以及OpenStack社区CI/CD系统和企业互操作性测试认证;OpenStack不同维度测试的实现和方法;基于OpenStack构建和运行服务于企业研发测试的CI/CD应用。
《OpenStack最佳实践——测试与CI/CD》适合于云计算相关专业的高校师生和具有一定软件测试或云计算技术基础的读者使用,对于在云计算企业中从事技术工作的管理人员、QA测试人员和研发人员,《OpenStack最佳实践——测试与CI/CD》也非常适用。
深度分享OpenStack实践经验
促进OpenStack的持续敏捷开发、部署和测试
一年前,在我即将离职之际,领导偶然对我说道:“那么喜欢写资料分享,考虑写本书吗?”我默笑了下,后来这种感觉愈加强烈,驱使着我真应该做点什么。
由于常写博客的习惯,加之为了更方便地让读者阅读和丰富OpenStack的整个测试体系,最终决定利用空闲时间写成一本书予以分享。能坚持下来,也算是最大的慰藉了。
现如今,各种容器技术及云计算、大数据、人工智能等技术应用层出不穷,同时又不断催生出一些诸如DevOps、CI/CD(持续集成/持续交付)、极限编程和敏捷开发等软件开发模式。
在我初涉OpenStack工作时,亦曾在其相关的诸多岗位间徘徊,但随着时间和工作事务的变化,愈加吸引了我对QA测试的兴趣和探索。回头看,无疑,测试为我开启了一扇认识OpenStack、QA测试和CI/CD的大门。
鉴于软件测试体系博大、内容众多,为了更好地把握方向和主题,本书的内容首先将重点放在了针对OpenStack不同维度的测试实践上;其次是基于CI/CD服务的OpenStack研发和测试实践;最后是基于OpenStack+Docker技术设计与实现CI/CD应用,以及相关的软件测试理论和方法等方面。
本书的目的旨在推动OpenStack测试的专业化、系统化。以解决实际问题为出发点,用大量的实际操作来阐述测试的思想与实践。并不是要告诉读者如何使用一个测试工具,这并非我的初衷。我希望读者在学习本书的内容后能够提高综合或专业的素质,摆脱简单的手工或单一测试,以及对测试理解的片面化,从而向更长远的目标迈进。诚然,本书也并非一本万能书,并不是有了它,测试便可以永无Bug,解决一切困难。
OpenStack云计算由计算、存储和网络三大基础构成,相对于其他方面,OpenStack测试是一个相对狭窄的领域,但基于这样的一个事实标准是,以OpenStack为代表的云计算已经成为一个既定事实。随着行业的不断渗透、生态环境的不断拓展等,对云计算的测试需求,特别是对高质量的复合型测试人才的需求将更加旺盛。在这里,希望本书能为有需要的读者起到帮助。
我想,本书能够出版需要感谢创造了这世界上仅次于Linux的第二大开源项目OpenStack的众多社区开发者,以及对我有养育之恩的父母,是你们为这本书的出版创造了可能。
我深知,限于自身个人水平,加之时间有限,本书可能存在某些错误,如你发现,恳请指出,不胜感激,联系邮件:faq@phei.com.cn。
徐 超

目录

第1章 DevOps的起源和应用 1
1.1 DevOps的起源和发展 1
1.1.1 什么是DevOps 1
1.1.2 DevOps的起源 2
1.1.3 DevOps的发展 3
1.2 DevOps在研发测试中的应用 3
1.2.1 软件活动中的常见问题 4
1.2.2 DevOps的应用 4
本章小结 7
第2章 CI/CD和软件测试基础 8
2.1 CI/CD介绍 8
2.1.1 什么是CI/CD 8
2.1.2 CI/CD的未来发展 13
2.2 CI/CD在软件研发测试中的应用 14
2.3 软件测试的生命周期 16
2.3.1 需求分析 17
2.3.2 制订测试计划 20
2.3.3 编写测试用例 22
2.3.4 测试评审 23
2.3.5 测试执行 23
2.3.6 测试分析和报告 24
2.4 软件测试的分类 27
2.4.1 根据分层概念划分 27
2.4.2 根据测试对代码可见性划分 28
2.4.3 根据测试时期划分 29
2.4.4 根据面向服务划分 29
2.5 ACC测试和PDCA螺旋式测试方法 31
2.5.1 ACC测试方法 31
2.5.2 PDCA螺旋式测试方法 33
2.6 如何让用户帮助做测试 34
2.7 如何设计OpenStack测试用例 35
2.7.1 测试用例设计方法 35
2.7.2 软件测试技巧 51
2.8 熟悉OpenStack在测试中的作用 52
本章小结 54
第3章 认识和参与OpenStack社区 55
3.1 安装OpenStack有哪些方法 55
3.2 如何体验最新的OpenStack版本 58
3.3 如何贡献OpenStack社区 61
3.3.1 注册账号和提交Bug 61
3.3.2 配置账号和提交代码 65
3.4 如何参与OpenStack社区交流 69
3.4.1 通过邮件方式交流 69
3.4.2 通过IRC方式交流 70
本章小结 72
第4章 OpenStack社区CI/CD和互操作性认证 73
4.1 Python测试基础 73
4.1.1 Python异常处理 73
4.1.2 Python断言和断点 76
4.1.3 Python单元测试 77
4.1.4 Python代码调试 83
4.2 深入理解OpenStack社区CI/CD 86
4.2.1 持续集成系统(Jenkins) 89
4.2.2 集群任务分发系统(Gearman) 93
4.2.3 任务组织系统(Zuul) 94
4.2.4 代码评审系统(Gerrit) 99
4.2.5 OpenStack Solum项目的使用 101
4.2.6 Software Factory的使用 108
4.3 OpenStack社区互操作性测试认证 110
4.3.1 社区互操作性测试认证内容 110
4.3.2 环境准备 111
4.3.3 执行测试认证 112
4.3.4 上传和查看测试结果 119
本章小结 121
第5章 如何实现OpenStack不同维度测试 122
5.1 OpenStack不同维度测试 122
5.2 OpenStack代码平面测试 124
5.3 OpenStack网络平面测试 128
5.3.1 Shaker测试环境部署 129
5.3.2 Shaker测试实践 132
5.4 OpenStack管理平面测试 134
5.5 OpenStack控制平面测试 135
5.5.1 基于Docker的Tempest集成测试 135
5.5.2 基于Docker的Rally性能测试 140
5.6 OpenStack Ceph存储测试 147
5.6.1 测试环境介绍 147
5.6.2 Ceph测试介绍 148
5.6.3 服务器性能测试 149
5.6.4 Ceph集群性能测试 154
5.6.5 块存储性能测试 157
5.6.6 虚拟机性能测试 161
5.7 物理基础设施层测试 166
5.7.1 网卡测试 167
5.7.2 内存测试 171
5.7.3 CPU测试 173
5.7.4 磁盘测试 174
5.8 OpenStack测试内容 176
本章小结 180
第6章 OpenStack Dashboard前端自动化测试 182
6.1 Web测试工具和Selenium的使用 182
6.1.1 Web自动化测试工具 182
6.1.2 Selenium的使用 183
6.2 Web自动化测试框架 195
6.2.1 模块驱动测试 196
6.2.2 数据驱动测试 197
6.2.3 页面对象驱动测试 199
6.2.4 使用Dashboard默认测试脚本 200
6.2.5 开发Dashboard自动化测试框架 204
6.2.6 基于数据驱动和模块驱动的页面对象测试 212
6.3 Web前端性能测试 216
6.3.1 前端性能测试的意义 216
6.3.2 提高前端性能的方法 217
6.3.3 前端性能测试工具 218
6.3.4 使用JMeter测试OpenStack前端性能 219
6.4 实现测试统一管理 225
本章小结 229
第7章 基于OpenStack+Docker设计与实现CI/CD 230
7.1 OpenStack和Docker集成现状 231
7.2 基于OpenStack+Docker设计CI/CD 234
7.2.1 基于Docker的软件持续交付 236
7.2.2 基于OpenStack+Docker的应用部署 238
7.2.3 基于OpenStack+Docker的CI/CD流程设计 239
7.3 构建镜像仓库管理系统(Harbor) 244
7.3.1 Docker镜像的管理 245
7.3.2 安装Harbor 247
7.3.3 使用Harbor 250
7.4 构建持续集成系统(Jenkins) 251
7.4.1 Jenkins相关插件支持 252
7.4.2 部署和使用Jenkins 253
7.4.3 Jenkins备份和还原 258
7.5 构建代码仓库系统(GitLab) 260
7.5.1 部署和使用GitLab 260
7.5.2 GitLab备份和还原 264
7.6 构建代码评审系统(Gerrit) 265
7.6.1 Gerrit安装和配置 266
7.6.2 Gerrit备份和还原 273
本章小结 273
第8章 基于CI/CD的OpenStack研发测试实践 274
8.1 GitLab+Gerrit+Jenkins集成 274
8.1.1 Gerrit+GitLab集成 274
8.1.2 Gerrit+Jenkins集成 278
8.2 在Jenkins上创建项目任务 279
8.2.1 在Jenkins上创建Gerrit项目测试任务 280
8.2.2 在Jenkins上创建Gerrit项目构建任务 281
8.2.3 在Jenkins上创建GitLab项目构建任务 285
8.3 基于CI/CD的OpenStack研发实践 288
8.3.1 提交开发代码 290
8.3.2 查看集成结果 290
8.4 基于CI/CD的OpenStack测试实践 293
8.4.1 获取Tempest测试用例 294
8.4.2 Tempest原理和测试分析 296
8.4.3 Tempest测试自动化输出报告 300
本章小结 302

本书勘误

印次
  • 页码:58  •  行数:1  •  印次: 1

    非开源 应为 开源

    杨中兴 提交于 2017/3/29 14:38:50
    杨中兴 确认于 2017/3/29 14:53:29
  • 页码:234  •  行数:16  •  印次: 1

    Docke 应为 Docker

    杨中兴 提交于 2017/3/29 14:40:21
    杨中兴 确认于 2017/3/29 14:53:23
  • 页码:264  •  行数:19  •  印次: 1

    每隔2天 应为 每隔1天

    杨中兴 提交于 2017/3/29 14:42:34
    杨中兴 确认于 2017/3/29 14:53:16

读者评论

电子书版本

  • Epub
  • Mobi

图书类别

相关图书

Istio权威指南(上):云原生服务网格Istio原理与实践

张超盟 等 编著 (作者)

本书是《Istio权威指南》的上册,重点讲解Istio的原理与实践,分为原理篇与实践篇。 原理篇介绍Istio的相关概念、主要架构和工作原理。其中,第1章...

 

Kubernetes权威指南:从Docker到Kubernetes实践全接触(第5版)

龚正 吴治辉 闫健勇 (作者)

Kubernetes是由谷歌开源的容器集群管理系统,为容器化应用提供了资源调度、部署运行、服务发现、扩缩容等一整套功能。Kubernetes也是将“一切以服务(...

 

Harbor权威指南

张海宁 邹佳 王岩 尹文开 任茂盛 等 (作者)

在云原生生态中,容器镜像和其他云原生制品的管理与分发是至关重要的一环。本书对开源云原生制品仓库Harbor展开全面讲解,由Harbor开源项目维护者和贡献者倾力...

 

Spring Cloud微服务架构实战

陈韶健 (作者)

本书以Spring Cloud为主导,以电商平台为实例,从服务架构设计的角度,对架构设计、程序开发、运维部署三个层面进行了详细的阐述。本书不仅详细介绍了如何使用...

¥69.30

云原生服务网格Istio:原理、实践、架构与源码解析

张超盟 (作者)

本书分为原理篇、实践篇、架构篇和源码篇,由浅入深地将Istio项目庖丁解牛并呈现给读者。原理篇介绍了服务网格技术与Istio项目的技术背景、设计理念与功能原理,...

¥97.30

边缘计算方法与工程实践

张骏 张骏 (作者)

本书以工程实践为导向,详细阐述和分析了边缘计算的整体技术细节。本书对边缘计算的概念、原理、基础架构、软件架构、安全管理等方面都进行了深入剖析,并对业界的发展现状...