軟體性能測試與LoadRunner實戰教程

內容簡介

《軟體性能測試與LoadRunner實戰教程》從測試項目實戰需求出發,講述了軟體測試的分類以及測試的流程等,還重點講述了性能測試技術和LoadRunner 11.0工具套用的實戰知識。書中將實踐中經常遇到的問題進行總結匯總成幾十個解決方案,詳細的項目案例,完整的性能測試方案、計畫、用例設計、性能總結及相關交付文檔為讀者做好實際項目提供了強大的參考和方向引導,同時為了滿足培訓機構及初學者的需要,在本書的各個章節都配有練習和實際面試題。 《軟體性能測試與LoadRunner實戰教程》適合測試初學者、測試人員、測試經理以及開發人員學習,也適合作為大專院校相關專業師生的學習用書,以及培訓機構的教材。  

圖書目錄

第1章 性能測試基礎及性能指標概述 1

1.1 典型的性能測試場景 2

1.2 不同群體眼中的性能測試 2

1.2.1 系統用戶群體眼中的性能測試 2

1.2.2 軟體開發群體眼中的性能測試 3

1.2.3 系統維護群體眼中的性能測試 3

1.3 功能測試與性能測試的關係 4

1.4 性能測試的概念及其分類 4

1.4.1 性能測試 4

1.4.2 負載測試 4

1.4.3 壓力測試 5

1.4.4 配置測試 5

1.4.5 並發測試 5

1.4.6 容量測試 5

1.4.7 可靠性測試 5

1.4.8 失敗測試 6

1.5 性能指標及相關計算公式 6

1.5.1 吞吐量計算公式 6

1.5.2 並發數量計算公式 6

1.5.3 思考時間計算公式 8

1.5.4 回響時間 8

1.5.5 點擊數 9

1.5.6 性能計數器 9

1.5.7 資源利用率 10

1.5.8 網路吞吐量 10

1.5.9 錯誤率 10

1.5.10 系統穩定性 11

1.6 本章小結 11

1.7 本章習題及經典面試試題 11

1.8 本章習題及經典面試試題答案 12

第2章 性能測試過程概述 15

2.1 性能測試的基本過程 16

2.2 性能測試需求分析 16

2.3 性能測試計畫 17

2.4 性能測試用例 18

2.5 測試腳本編寫 20

2.6 測試場景設計 20

2.7 測試場景運行 22

2.8 場景運行監控 23

2.9 運行結果分析 23

2.10 系統性能調優 24

2.11 性能測試總結 24

2.12 本章小結 25

2.13 本章習題及經典面試試題 25

2.14 本章習題及經典面試試題答案 26

第3章 LoadRunner相關概念及樣例程式的安裝過程 29

3.1 LoadRunner及樣例程式安裝過程 30

3.1.1 Windows版本的安裝過程 30

3.1.2 許可協定的套用 33

3.1.3 B/S樣例程式的使用 34

3.1.4 C/S樣例程式的安裝過程與使用 34

3.2 運行機制和主要組成部分 37

3.3 LoadRunner相關概念解析 38

3.3.1 集合點 38

3.3.2 事務 40

3.3.3 檢查點 41

3.3.4 思考時間 44

3.3.5 關聯 46

3.4 本章小結 47

3.5 本章習題及經典面試試題 48

3.6 本章習題及經典面試試題答案 48

第4章 深度解析LoadRunner 11.0相關功能套用 51

4.1 無工具情況下的性能測試 52

4.2 性能測試工具LoadRunner的工作原理 52

4.3 VuGen套用介紹 54

4.4 協定的類型及選擇方法 54

4.4.1 Vuser類型 55

4.4.2 協定選擇 57

4.4.3 單協定選擇方法及腳本展示 58

4.4.4 多協定選擇方法及腳本展示 58

4.4.5 建立多個Action 60

4.5 腳本的創建過程 62

4.5.1 協定理解的誤區 63

4.5.2 B/S架構應用程式腳本的套用實例 64

4.5.3 C/S架構應用程式腳本的套用實例 67

4.6 腳本的參數化 73

4.6.1 參數化的方法及其技巧 74

4.6.2 數據分配方法 75

4.6.3 數據更新方式 75

4.6.4 數據分配和數據更新方式的套用實例 76

4.6.5 表數據參數類型 77

4.6.6 內部數據參數類型 79

4.6.7 Excel類型數據檔案數據獲取 81

4.7 調試技術 86

4.7.1 斷點設定 86

4.7.2 單步跟蹤 89

4.7.3 日誌輸出 90

4.7.4 腳本編譯 92

4.7.5 腳本注釋 94

4.8 Controller套用介紹 97

4.9 場景設定描述 97

4.9.1 面向目標的場景設計 98

4.9.2 面向目標的場景設計的5種目標類型 99

4.9.3 基於手動的場景設計 101

4.9.4 計畫方式和運行模式 104

4.9.5 全局計畫和互動計畫圖 105

4.9.6 服務水平協定(SLA) 110

4.10 負載生成器 118

4.11 IP Wizard的套用 121

4.12 負載選項設定詳解 124

4.13 性能指標監控 126

4.13.1 性能計數器 127

4.13.2 添加性能計數器指標 127

4.13.3 性能計數器指標的採集與圖表輸出 129

4.14 Analysis套用介紹 131

4.15 結果目錄檔案結構 132

4.16 Analysis Summary分析 133

4.17 事務相關信息部分內容 134

4.17.1 分析概要事務相關信息問題的提出 134

4.17.2 結果概要事務相關信息問題的分析 134

4.17.3 結果概要事務腳本設計及其相關設定 135

4.17.4 如何解決結果概要信息不計入思考時間的問題 137

4.17.5 如何知道每個虛擬用戶負載時的取值 139

4.17.6 將數據導出到Excel檔案中 142

4.17.7 對導出的數據進行篩選 143

4.17.8 對結果數據進行有效的分析 144

4.18 吞吐量相關信息 147

4.18.1 概要分析吞吐量等相關信息問題的提出 147

4.18.2 概要分析吞吐量等相關信息問題的分析 148

4.18.3 概要分析吞吐量等相關內容的設計與實現 149

4.19 執行結果分析過程 151

4.19.1 合併圖的套用 152

4.19.2 合併圖的3種方式 153

4.19.3 自動關聯的套用 154

4.19.4 交叉結果的套用 156

4.19.5 性能測試模型 157

4.19.6 性能瓶頸定位——拐點分析法 158

4.19.7 分析相關選項設定 159

4.20 主要圖表分析 161

4.20.1 虛擬用戶相關圖表 161

4.20.2 事務相關圖表 162

4.20.3 錯誤相關圖表 166

4.20.4 Web資源相關圖表 168

4.20.5 網頁診斷相關圖表 175

4.20.6 系統資源相關圖表 181

4.21 本章小結 184

4.22 本章習題及經典面試試題 184

4.23 本章習題及經典面試試題答案 185

第5章 實例講解腳本的錄製、場景設計、結果分析過程 187

5.1 腳本的錄製、場景設計、結果分析 188

5.1.1 LoadRunner測試過程模型 188

5.1.2 Web應用程式的套用 188

5.1.3 腳本處理 189

5.1.4 負載處理部分 199

5.1.5 系統性能改進意見 205

5.2 本章小結 206

5.3 本章習題及經典面試試題 206

5.4 本章習題及經典面試試題答案 208

第6章 腳本語言編寫基礎及關聯技術套用 209

6.1 認識LoadRunner腳本語言 210

6.2 C語言基礎 211

6.2.1 數據類型 211

6.2.2 C語言語句分類 216

6.2.3 基礎知識 225

6.3 關聯的套用 251

6.3.1 什麼是關聯 252

6.3.2 自動關聯 253

6.3.3 手動關聯 255

6.3.4 關聯規則 257

6.3.5 關聯函式詳解 260

6.3.6 簡單關聯的套用實例 262

6.3.7 較複雜關聯的套用實例 264

6.4 動態程式庫函式的調用 267

6.5 特殊函式套用注意事項 269

6.6 自定義函式套用 272

6.6.1 自定義函式僅套用於本腳本的實例 272

6.6.2 自定義函式的復用實例 274

6.7 本章小結 275

6.8 本章習題及經典面試試題 275

6.9 本章習題及經典面試試題答案 277

第7章 性能測試及LoadRunner套用常見問題解答 283

7.1 如何突破參數的百條顯示限制 284

7.2 如何突破Controller可用腳本50條限制 284

7.3 如何解決資料庫查詢結果過大導致的錄製失敗 285

7.4 如何調整經常用到的相關協定腳本模板 286

7.5 如何將Connect()中的密文改為明文 287

7.6 如何添加並運用附加變數 289

7.7 如何解決腳本中的亂碼問題 290

7.8 如何在錄製時加入自定義標頭 292

7.9 執行緒和進程運行方式有何不同 293

7.10 如何實現腳本分步錄製 295

7.11 如何在腳本中套用常量和數組 296

7.12 VuGen中支持哪些步驟類型 297

7.13 如何處理ASP.NET中的ViewState 298

7.14 如何理解Return的返回值 302

7.15 如何解決負載均衡將壓力作用到一台機器 304

7.16 如何對Apache伺服器上的資源使用情況進行監控 305

7.17 如何在腳本中加入DOS命令 306

7.18 如何下載並保存檔案到本地 307

7.19 如何理解常用圖表的含義 310

7.20 基於目標和手動場景測試有何聯繫和不同 311

7.21 如何在命令行下啟動Controller 313

7.22 如何解決由於設定引起的運行失敗問題 314

7.23 如何實現對伺服器系統資源的監控 315

7.24 如何實現對數據伺服器的監控 319

7.25 如何實現對Web應用程式伺服器資源的監控 321

7.26 如何在Analysis圖表中添加分析注釋 324

7.27 如何確定登錄達到回響時間為3s的指標 326

7.28 如何使用自動關聯對測試結果進行分析 328

7.29 如何根據分析結果判斷性能有所改善 330

7.30 如何對圖表進行合併,定位系統瓶頸 331

7.31 如何套用Java Vuser驗證算法的執行效率 332

7.32 如何用程式控制網站的訪問次數 335

7.33 幾種不同逾時的處理方法 339

7.34 如何將日期類型數據參數化到腳本中 340

7.35 如何自定義請求,並判斷返回數據的正確性 344

7.36 LoadRunner如何運行WinRunner腳本 346

7.37 LoadRunner如何利用已有文本數據 349

7.38 如何能夠產生樣例程式的Session 350

7.39 如何實現ping IP的功能 352

7.40 如何在Vugen中自定義工具條按鈕 353

7.41 如何在Vugen中的Tools選單中添加選單項 354

7.42 如何在Vugen中定義選單項的快捷鍵 356

7.43 為什麼結果導出時會出現異常 356

7.44 如何增大網頁細分圖顯示的URLS長度 357

7.45 如何設定登錄的用戶名和口令 358

7.46 如何在執行疊代時退出腳本 359

7.47 如何使用鍵盤快捷鍵 360

7.48 如何手動轉換字元串編碼 361

7.49 如何理解結果目錄檔案結構 362

7.50 如何監控Tomcat 363

7.51 如何在UNIX系統下用命令行運行腳本 367

7.52 如何使用C函式進行腳本跟蹤 368

7.53 如何知道腳本對應路徑下檔案的含義 369

7.54 如何結合企業特點進行性能測試 379

7.55 如何套用性能測試常用計算公式 381

7.56 如何掌握“拐點”分析方法 384

7.57 如何發現性能測試的規律 384

7.58 如何編寫性能測試用例 385

7.59 如何對MySQL資料庫進行查詢操作 388

7.60 為何無法與Load Generator通信 390

7.61 本章小結 391

7.62 本章習題及經典面試試題 392

7.63 本章習題及經典面試試題答案 393

第8章 性能測試項目實施過程及文檔寫作 397

8.1 基於不同用戶群的性能測試 398

8.2 驗收測試通常提交的成果物 398

8.3 驗收測試項目的完整過程 399

8.4 項目預算和項目立項 400

8.4.1 項目預算和項目立項 400

8.4.2 項目預算相關內容及樣表 400

8.5 項目準備階段及驗收測試方案編寫 401

8.5.1 項目人員入場 401

8.5.2 項目調研 402

8.5.3 驗收測試方案 402

8.5.4 驗收測試方案索引目錄結構 402

8.5.5 驗收測試方案的引言部分 405

8.5.6 驗收測試方案的系統簡介部分 406

8.5.7 驗收測試方案的測試目標和標準部分 406

8.5.8 驗收測試方案的測試需求分析部分 407

8.5.9 驗收測試方案的測試策略部分 408

8.5.10 驗收測試方案的項目實施階段部分 412

8.5.11 驗收測試方案的“測試實施安排”部分 416

8.5.12 驗收測試方案的“測試計畫”部分 417

8.5.13 驗收測試方案的“質量保證”部分 418

8.5.14 驗收測試方案的缺陷管理部分 422

8.5.15 驗收測試方案的“項目溝通”部分 423

8.5.16 驗收測試方案的“工作產品”部分 424

8.6 驗收測試實施過程及性能測試計畫編寫 424

8.6.1 性能測試計畫 425

8.6.2 性能測試計畫索引目錄結構 425

8.6.3 性能測試計畫的“簡介”部分 426

8.6.4 性能測試計畫的“測試業務及性能需求”部分 428

8.6.5 性能測試計畫的“測試環境”部分 428

8.6.6 性能測試計畫的“測試策略”部分 429

8.6.7 性能測試計畫的“命名規範”部分 431

8.6.8 性能測試計畫的“用例設計”部分 433

8.6.9 性能測試計畫的“場景設計”部分 434

8.6.10 性能測試計畫的“測試數據準備”部分 434

8.6.11 性能測試計畫的“計畫安排”部分 435

8.6.12 性能測試計畫的“局限條件”部分 435

8.6.13 性能測試計畫的“風險評估”部分 435

8.6.14 性能測試計畫的“交付產品”部分 436

8.7 驗收測試實施過程 436

8.7.1 性能測試腳本設計 436

8.7.2 性能測試腳本數據準備 439

8.7.3 性能測試場景設計 440

8.7.4 性能測試場景監控與場景執行 442

8.7.5 性能測試結果分析 446

8.7.6 性能調優 447

8.8 驗收測試總結及其性能測試總結的編寫 448

8.8.1 某單位某系統驗收測試結論 448

8.8.2 某單位某系統驗收測試交付清單 449

8.8.3 某單位某系統驗收測試報告 449

8.8.4 某單位某系統驗收測試性能測試報告 456

8.8.5 功能/性能測試缺陷遺留評審確認表格 463

8.8.6 項目管理相關表格 463

8.9 項目驗收相關文檔編寫 465

8.9.1 驗收申請 466

8.9.2 工作量確認 466

8.10 本章小結 466

8.11 本章習題及經典面試試題 466

8.12 本章習題及經典面試試題答案 467

第9章 性能測試經典面試試題及面試技巧 469

9.1 軟體性能測試綜合模擬試題 470

9.2 LoadRunner英文性能測試的面試題 472

9.3 經常被問道的智力面試題目 474

9.3.1 百枚金幣問題 474

9.3.2 污染藥丸問題 474

9.3.3 三人住宿問題 474

9.3.4 小鳥飛行距離問題 475

9.3.5 燒香問題 475

9.3.6 分金條問題 475

9.3.7 過橋問題 475

9.3.8 三個燈泡問題 476

9.4 找測試工作的策略 476

9.4.1 找工作前需要做些什麼 476

9.4.2 面試時該做些什麼 479

9.4.3 面試後該做的事情 482

9.5 軟體性能測試綜合模擬試題答案 483  

相關詞條

熱門詞條

聯絡我們