內容介紹
每天,google都要測試和發布數百萬個源檔案、億萬行的代碼。數以億計的構建動作會觸發幾百萬次的自動化測試,並在好幾十萬個瀏覽器實例上執行。面對這些看似不可能完成的任務,谷歌是如何測試的呢?
《google軟體測試之道》從內部視角告訴你這個世界上知名的網際網路公司是如何應對21世紀軟體測試的獨特挑戰的。《google軟體測試之道》抓住了google做測試的本質,抓住了google測試這個時代最複雜軟體的精華。《google軟體測試之道》描述了測試解決方案,揭示了測試架構是如何設計、實現和運行的,介紹了軟體測試工程師的角色;講解了技術測試人員應該具有的技術技能;闡述了測試工程師在產品生命周期中的職責;講述了測試管理及在google的測試歷史或在主要產品上發揮了重要作用的工程師的訪談,這對那些試圖建立類似google的測試流程或團隊的人受益很大。
最後,《google軟體測試之道》還介紹了作者對於google測試如何繼續演進的見解、google乃至整個業界的測試方向的一些預言,相信很多讀者都會感受到其中的洞察力,甚至感到震驚。本書可以作為任何從事軟體測試人員到達目標的指南。
《google軟體測試之道》適合開發人員、測試人員、測試管理人員使用,也適合大中專院校相關專業師生的學習用書,以及培訓學校的教材。
作者介紹
james whittaker 是google的工程總監 ,負責部分google產品的測試,包括chrome、地圖、google web apps。在加盟google之前,james在microsoft工作,再之前是一名大學教授。james在全球測試領域聞名遐邇。
jason arbon 是google的一名測試工程師te ,曾參與負責google桌面、chrome和chrome os的測試。同時jason也是一系列開源測試工具和個性化實驗的開發負責人。在加入google之前,他也曾在microsoft工作過。
jeff carollo 是google的一名測試開發工程師set,曾參與負責google voice、工具框、chrome、chrome os產品 的測試。jeff為許多google內部的開發團隊提供諮詢服務,幫助提升這些團隊初期的代碼質量。之後在2010年,jeff轉崗為軟體開發工程師(se),並領導負責google+ apis的開發。在加入google之前,jeff也曾經在microsoft工作過。
作品目錄
《google軟體測試之道》
第1章 google軟體測試介紹 1
1.1 質量不等於測試 5
1.2 角色 6
1.2.1 軟體開發工程師(swe) 7
1.2.2 軟體測試開發工程師(set) 7
1.2.3 測試工程師(te) 8
1.3 組織結構 9
1.4 爬、走、跑 10
1.5 測試類型 12
第2章 軟體測試開發工程師 15
2.1 set的工作 17
2.1.1 開發和測試流程 17
2.1.2 set究竟是誰 21
2.1.3 項目的早期階段 22
2.1.4 團隊結構 23
2.1.5 設計文檔 24
2.1.6 接口與協定 26
2.1.7 自動化計畫 27
2.1.8 可測試性 28
.2.1.9 set的工作流程:一個實例 31
2.1.10 測試執行 41
2.1.11 測試大小的定義 42
2.1.12 測試規模在共享測試平台中的使用 45
2.1.13 測試規模的益處 46
2.1.14 測試運行要求 48
2.2 測試認證 54
2.3 set的招聘 62
2.4 與工具開發工程師ted mao的訪談 68
2.5 與web driver的創建者simon stewart的對話 70
第3章 測試工程師 75
3.1 一種面向用戶的測試角色 75
3.2 測試工程師的工作 76
3.2.1 測試計畫 79
3.2.2 風險 94
3.2.3 測試用例的生命周期 104
3.2.4 bug的生命周期 109
3.2.5 te的招聘 121
3.2.6 google的測試領導和管理工作 128
3.2.7 維護模式的測試(maintenance mode testing) 131
3.2.8 質量機器人(quality bot)實驗 134
3.2.9 bite實驗 145
3.2.10 google test analytics 154
3.2.11 零成本測試流程 159
3.2.12 外部供應商 163
3.3 與google docs測試工程師林賽·韋伯斯特(lindsay webster)的訪談 165
3.4 與youtube測試工程師安普·周(apple chow)的訪談 170
第4章 測試工程經理 177
4.1 測試工程經理的工作 177
4.2 獲得項目和人員 179
4.3 影響力 180
4.4 gmail測試工程經理ankit mehta的訪談 182
4.5 android測試工程經理hung dang的訪談 188
4.6 chrome測試工程經理joel hynoski的訪談 192
4.7 測試總監 197
4.8 搜尋和地理信息測試總監shelton mar的訪談 198
4.9 工程工具總監ashish kumar的訪談 201
4.10 印度google測試總監sujaysahni訪談 205
4.11 工程經理brad green訪談 209
4.12 james whittaker訪談 212
第5章 google軟體測試改進 219
5.1 google流程中的致命缺陷 219
5.2 set的未來 221
5.3 te的未來 222
5.4 測試總監和經理的未來 223
5.5 未來的測試基礎設施 224
5.6 結論 225
附錄a chrome os測試計畫 227
a.1 測試主題概述 227
a.2 風險分析 228
a.3 每次構建版本的基線測試 228
a.4 最新可測試版本(last known good,lkg)的每日測試 229
a.5 發布版本測試 229
a.6 手工測試與自動化測試 229
a.7 開發和測試的質量關注點 230
a.8 發布通道 230
a.9 用戶輸入 230
a.10 測試用例庫 231
a.11 測試儀錶盤 231
a.12 虛擬化 231
a.13 性能 231
a.14 壓力、長時運行和穩定性測試 231
a.15 測試執行框架(autotest) 232
a.16 oem廠商 232
a.17 硬體實驗田 232
a.18 端到端測試自動化集群 232
a.19 測試瀏覽器的套用管理器 232
a.20 瀏覽器的可測試性 233
a.21 硬體 234
a.22 時間線 234
a.23 主要的測試驅動力 236
a.24 相關文檔 236
附錄b chrome的漫遊測試 239
b.1 購物漫遊 239
b.2 學生漫遊 240
b.3 國際長途電話漫遊 241
b.4 地標漫遊 241
b.5 通宵漫遊 242
b.6 公務漫遊測試 243
b.7 危險地帶漫遊 243
b.8 個性化漫遊 244
附錄c 有關工具和代碼的部落格文章 245
c.1 使用bite從bug和冗餘的工作中解脫出來 245
c.2 發布qualitybot 247
c.3 rpf:google的錄製回放框架 249
c.4 google測試分析系統(google test analytics)——現在開源了 251
附錄d 術語表 257