《OpenStack最佳實踐》全稱《OpenStack最佳實踐——測試與CICD》,作者徐超,由電子工業出版社2017年4月出版。
基本介紹
- 書名:OpenStack最佳實踐——測試與CICD
- 作者:徐超
- ISBN:978-7-121-31034-8
- 頁數:316
- 定價:69.00
- 出版社:電子工業出版社
- 出版時間:2017年4月
- 開本:16開
內容提要,目錄,
內容提要
目前,以雲計算等為代表的新興技術得到了大量的運用與普及。同時,憑藉著眾多極其獨特的優勢,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》也非常適用。
目錄
第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