-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

零成本實現Web性能測試——基于Apache JMeter和Gatling

( 簡體 字)
作者:溫素劍類別:1. -> 程式設計 -> 綜合
譯者:
出版社:電子工業出版社零成本實現Web性能測試——基于Apache JMeter和Gatling 3dWoo書號: 43828
詢問書籍請說出此書號!

缺書
NT售價: 395

出版日:3/1/2016
頁數:492
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121282874
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

我曾經有幸為國內最大的電信設備供應商工作過一段時間,期間聽一些資深老員工講過一個故事。這個故事大概可以被當作笑話來聽,不過笑笑之后卻總也忘不掉。話說20世紀90年代初的某一天,國內第一臺自主研發的大型固話交換機,終于千呼萬喚地“閃亮”登場了。于是乎,這家公司馬上向用戶大力推銷這款設備,但是用戶提出了一個很實際的問題徹底難住了這家公司。問題很簡單,那就是需要一份性能測試報告來證明這臺設備真能支持宣稱的話務容量。那時候還沒有成熟的電信領域性能測試工具,該怎么辦呢?活人豈能讓尿憋死,幸好有聰明的領導想出了一個中國式的解決辦法。
某天下午,全公司的員工都放下了手頭的工作,每人懷抱一部老式電話機(還要靠轉盤來撥號),等領導倒數“三、二、一”后集體打電話。據說當時人數不夠,達不到用戶要求的通話量,甚至出現了一個人操作兩部電話機的情況。我沒能一睹當時的盛況,一直深感遺憾。
幸好科學技術發展到今天,已經有了多款成熟的性能測試工具,否則測試人員一定會發瘋。試想當前的電信交換機話務容量早已翻了不知多少倍,如果還要靠人海戰術去測試,即使全公司的員工雙手雙腳去操作電話機,也肯定是忙不過來的。測試人員應該為測試技術的飛速發展而感到歡心鼓舞。那么現在是否就可以高枕無憂了?答案是否定的。當前測試人員面臨的問題,不再是有沒有性能測試工具,而是有沒有合適的性能測試工具。
怎么界定“合適”一詞?我想至少可以包含如下幾個方面:
? 技術先進,功能強大。
? 支持多種測試類型(協議)。
? 易學易用。
? 擁有良好的可擴展性。
? 擁有良好的可移植性(跨平臺)。
? 合理的價格。
當前性能測試工具很多,但要同時滿足以上數個條件的卻很少。在Web性能測試領域,目前有兩種工具被廣泛使用,一種是LoadRunner,另一種就是JMeter。不過LoadRunner并不是一款“合適”的工具,在此并不是否認LoadRunner是一款優秀的性能測試工具,它唯一的缺點就是過于昂貴(至于LoadRunner Licence及其支持服務的具體價格,感興趣的朋友可以向HP公司了解,相信其價格會將中國90%以上的軟件公司擋在門外)。JMeter具備了LoadRunner 95%以上的功能,但其價格無限接近于零,可謂性價比極高。當然相對于商業工具LoadRunner,JMeter也有其自身的缺點。它最大的缺點就是沒有專業的售后支持隊伍,不過想想商業工具貴得令人咋舌的維護支持費用,也就能夠釋懷了。
寫作背景
我目前在一家大型保險公司IT測試部門工作,帶領一個測試團隊負責測試公司的電話銷售系統。這個系統非常龐大,由多個子系統構成,同時它又與很多公司內部/外部系統(例如銀聯、銀行的交易系統)發生交互,目前公司有數萬員工依賴它來完成每日的銷售任務。如此復雜的一個系統,偏偏又擁有數量眾多的用戶,讀者朋友可以試想一下,只要此系統稍有異常,業務部門的投訴絕對會讓IT部門“吃不了兜著走”。
面對頻繁的版本發布,嚴格的系統性能測試是不可或缺的。測試部門也花大價錢購買了商業工具LoadRunner,但是實際工作中發現測試人員還是受到頗多限制。其一,測試資源存在瓶頸,公司購買的Licence是有限的,無法完全滿足測試人員的需求,經常出現人等機器的情況,甚至影響到了軟件版本的及時發布;其二,公司購買的并發數許可也是有限的,如果需要模擬更大的系統壓力,那么對不起,公司還得再掏錢;其三,公司購買的協議類型是有限的,如果需要使用其他未購置的協議類型,對不起,公司依然需要再掏錢(測試人員很難用臨時的測試需求,去說服領導撥上一大筆經費)。
在嘗試說服領導增加預算失敗后,只能轉而尋求其他解決辦法,那就是開源性能測試工具JMeter。經過大規模的試用后,發現JMeter完全能夠滿足測試人員的需求。
“云計算”絕對是當前最熱的IT詞匯之一。“云”聽起來很虛幻,其實就是瘦客戶端加網格計算。今后客戶端不再會有大量的計算任務,計算和存儲都被放在云上。在作者看來,今后的客戶端應該就是一個瀏覽器,用戶的所有操作都是通過瀏覽器來實現的。Google發布的操作系統Chrome OS,就是基于這一理念設計的。B/S和C/S架構的軟件系統,應該會慢慢演進到Browser/Cloud模式。如此看來,在云計算時代,Web性能測試依然很重要,而且會越來越重要。因此,本人萌生了寫作一本關于Web性能測試的書籍的想法。
本書內容
本書著重介紹如何使用JMeter和Gatling開源性能測試工具,來構建Web性能測試體系。
本書不是一本講述深奧測試理論的教科書,而是一本實戰類的書籍。作者想要達到的目標就是——讀者朋友們在認真讀完本書后,馬上就能在生產實踐中用上所學內容。本書首先介紹基礎的性能測試理論,接著詳細介紹如何使用JMeter來完成各種類型的性能測試,最重要的則是性能測試實戰章節。實戰章節中作者以測試某大型保險公司電話銷售系統為例,手把手教會讀者如何用JMeter來完成一個實際的性能測試任務。本書第1章介紹性能測試理論,第2∼12章詳細介紹JMeter工具在各種場景下的使用方法,以及如何分析性能測試結果,第13章是性能測試實戰。從第14章開始,將會介紹一種新穎的性能測試工具Gatling,作為JMeter的一種有益補充。
目標讀者
本書的目標讀者是初級和資深軟件測試工程師,以及有意降低性能測試成本的測試經理。本書也適合應屆畢業生,要想熟練掌握性能測試的方法和技巧,本書也是一塊不錯的敲門磚。
感謝
首先要感謝我的家人,正是由于他們默默的支持,我才能靜下心來寫作。其次還要感謝參與本書編寫的部門同事劉興?、何邱、鄧智、谷明、李?、李坤、袁春梅、唐明娟、李穎、陳建紅、徐雅、曾泗維。

溫素劍
2015年12月3日




目錄




第1章 性能測試基礎 1
1.1 初識性能測試 1
1.1.1 性能測試是什么 1
1.1.2 性能測試的目的 2
1.1.3 性能測試的常見分類 2
1.1.4 性能測試的常見觀察指標 3
1.1.5 性能測試的基本流程 3
1.2 開源Web性能測試 8
1.2.1 Web性能測試的重要性 8
1.2.2 開源性能測試 8
1.2.3 開源性能測試的優勢 9
1.3 本章小結 9
第2章 JMeter基礎知識 10
2.1 JMeter簡介 10
2.1.1 JMeter主要特點 11
2.1.2 JMeter常用術語 12
2.1.3 JMeter測試結果字段的意義 12
2.2 JMeter工作原理 13
2.3 JMeter的安裝 13
2.3.1 JMeter安裝配置要求 13
2.3.2 JMeter安裝 13
2.4 如何運行JMeter 14
2.5 配置JMeter 20
2.6 JMeter與LoadRunner優缺點對比 21
2.7 本章小結 21
第3章 Web性能測試腳本錄制與開發 22
3.1 JMeter GUI基本操作 22
3.2 JMeter常用測試元件 25
3.3 JMeter腳本開發基礎 32
3.3.1 JMeter執行順序規則 32
3.3.2 作用域規則 33
3.3.3 JMeter屬性和變量 34
3.3.4 使用變量參數化測試 35
3.3.4 創建Web測試計劃 35
3.5 錄制Web測試腳本 41
3.5.1 使用代理錄制Web性能測試腳本 41
3.5.2 使用Badboy錄制Web性能測試腳本 46
3.6 創建高級Web測試計劃 51
3.7 本章小結 52
第4章 數據庫性能測試腳本開發 53
4.1 創建數據庫測試計劃 53
4.2 九步輕松搞定Oracle數據庫性能測試 58
4.3 本章小結 63
第5章 FTP性能測試腳本開發 64
5.1 FTP是什么 64
5.2 創建FTP測試計劃 68
5.3 本章小結 72
第6章 LDAP性能測試腳本開發 73
6.1 LDAP是什么 73
6.2 創建LDAP測試計劃 84
6.3 LDAP常見操作指南 89
6.4 創建擴展LDAP測試計劃 91
6.5 本章小結 100
第7章 Web Service性能測試腳本開發 101
7.1 Web Service是什么 101
7.1.1 技術和規則 102
7.1.2 目標 102
7.2 創建Web Service測試計劃 105
7.3 本章小結 108
第8章 JMS性能測試腳本開發 109
8.1 JMS是什么 109
8.1.1 定義 109
8.1.2 簡介 109
8.1.3 歷史 110
8.1.4 體系架構 110
8.1.5 JMS模型 110
8.1.6 傳遞消息方式 111
8.1.7 JMS應用程序接口 112
8.1.8 JMS提供者實現 113
8.2 創建JMS點對點測試計劃 113
8.3 創建JMS Topic測試計劃 116
8.4 本章小結 120
第9章 服務器監控測試腳本開發 121
9.1 創建監控測試計劃 121
9.2 本章小結 125
第10章 詳解JMeter測試元件 126
10.1 詳解JMeter監聽器(Listeners) 126
10.2 詳解JMeter邏輯控制器 135
10.3 詳解JMeter配置元件 151
10.4 詳解JMeter斷言 175
10.5 詳解JMeter定時器 188
10.6 詳解JMeter前置處理器 195
10.7 詳解JMeter后置處理器 205
10.8 詳解JMeter采樣器 217
10.9 詳解JMeter其他測試元件 268
10.10 本章小結 286
第11章 JMeter進階知識 287
11.1 詳解JMeter函數和變量 287
11.2 詳解JMeter正則表達式 310
11.3 詳解JMeter遠程測試 314
11.4 詳解JMeter最佳實踐經驗 319
11.5 一些小技巧 324
11.6 本章小結 326
第12章 性能測試結果分析 327
12.1 如何分析性能測試結果 327
12.2 如何借助監聽器發現性能缺陷 330
12.2.1 監聽器——性能測試分析的基石 330
12.2.2 巧用監聽器——識別性能缺陷 354
12.3 借助Ant實現批量測試和報表生成 361
12.4 本章小結 363
第13章 JMeter性能測試實戰——電話銷售系統 364
13.1 測試背景和測試目標 364
13.2 分析確定性能測試指標 364
13.4 錄制創建性能測試腳本 366
13.5 運行性能測試腳本 369
13.6 分析性能測試結果 371
13.7 上報性能測試缺陷 374
13.8 本章小結 375
第14章 Gatling基礎知識 376
14.1 Gatling與JMeter優缺點對比 378
14.2 Gatling快速上手 379
14.3 Gatling進階指南 386
14.4 本章小結 392
第15章 Gatling詳解 393
15.1 Gatling概念 393
15.2 Gatling目錄結構 395
15.3 Gatling安裝細節與如何適配操作系統 396
15.4 Gatling配置 397
15.5 模擬器結構 399
15.6 模擬器初始化 401
15.7 場景 403
15.8 斷言 409
15.9 報告 411
15.10 本章小結 416
第16章 Gatling會話 417
16.1 Session API 417
16.2 EL 和表達式 419
16.3 填充器 420
16.4 驗證 424
16.5 本章小結 426
第17章 Gatling HTTP協議 427
17.1 HTTP協議 427
17.2 HTTP請求 433
17.3 HTTP頭 435
17.4 HTTP 檢查點 442
17.5 SSL 447
17.6 HTTP助手 448
17.7 HTTP錄制器 449
17.8 WebSocket 454
17.9 本章小結 458


第18章 Gatling JMS 459
18.1 JMS 協議 459
18.2 本章小結 461
第19章 Gatling擴展 462
19.1 Graphite 462
19.2 SBT插件 465
19.3 Maven插件 465
19.4 Jenkins插件 466
19.5 VTD XML 466
19.6 第三方插件 466
19.7 性能擴展 467
19.8 參數傳遞 467
19.9 處理JSF 467
19.10 本章小結 469
第20章 Gatling性能測試實戰——搜索引擎 470
20.1 測試目標 470
20.2 構建Gatling場景 471
20.3 運行Gatling場景,分析結果 477
20.4 本章小結 479
內容簡介:

本書從目前主流的開源性能測試工具入手,由淺入深、全面、細致地闡述了如何使用開源測試工具Apache JMeter和Gatling來完成Web性能測試,便于讀者輕松掌握WEB性能測試的原理、方法和實際操作。本書不是一本深奧的測試理論書籍,而是一本測試實戰類的書籍。作者試圖在書中向讀者演示,如何在實際工作中輕松完成各種類型的性能測試。

目錄:

第1章 性能測試基礎 1
1.1 初識性能測試 1
1.1.1 性能測試是什么 1
1.1.2 性能測試的目的 2
1.1.3 性能測試的常見分類 2
1.1.4 性能測試的常見觀察指標 3
1.1.5 性能測試的基本流程 3
1.2 開源Web性能測試 8
1.2.1 Web性能測試的重要性 8
1.2.2 開源性能測試 8
1.2.3 開源性能測試的優勢 9
1.3 本章小結 9
第2章 JMeter基礎知識 10
2.1 JMeter簡介 10
2.1.1 JMeter主要特點 11
2.1.2 JMeter常用術語 12
2.1.3 JMeter測試結果字段的意義 12
2.2 JMeter工作原理 13
2.3 JMeter的安裝 13
2.3.1 JMeter安裝配置要求 13
2.3.2 JMeter安裝 13
2.4 如何運行JMeter 14
2.5 配置JMeter 20
2.6 JMeter與LoadRunner優缺點對比 21
2.7 本章小結 21
第3章 Web性能測試腳本錄制與開發 22
3.1 JMeter GUI基本操作 22
3.2 JMeter常用測試元件 25
3.3 JMeter腳本開發基礎 32
3.3.1 JMeter執行順序規則 32
3.3.2 作用域規則 33
3.3.3 JMeter屬性和變量 34
3.3.4 使用變量參數化測試 35
3.3.4 創建Web測試計劃 35
3.5 錄制Web測試腳本 41
3.5.1 使用代理錄制Web性能測試腳本 41
3.5.2 使用Badboy錄制Web性能測試腳本 46
3.6 創建高級Web測試計劃 51
3.7 本章小結 52
第4章 數據庫性能測試腳本開發 53
4.1 創建數據庫測試計劃 53
4.2 九步輕松搞定Oracle數據庫性能測試 58
4.3 本章小結 63
第5章 FTP性能測試腳本開發 64
5.1 FTP是什么 64
5.2 創建FTP測試計劃 68
5.3 本章小結 72
第6章 LDAP性能測試腳本開發 73
6.1 LDAP是什么 73
6.2 創建LDAP測試計劃 84
6.3 LDAP常見操作指南 89
6.4 創建擴展LDAP測試計劃 91
6.5 本章小結 100
第7章 Web Service性能測試腳本開發 101
7.1 Web Service是什么 101
7.1.1 技術和規則 102
7.1.2 目標 102
7.2 創建Web Service測試計劃 105
7.3 本章小結 108
第8章 JMS性能測試腳本開發 109
8.1 JMS是什么 109
8.1.1 定義 109
8.1.2 簡介 109
8.1.3 歷史 110
8.1.4 體系架構 110
8.1.5 JMS模型 110
8.1.6 傳遞消息方式 111
8.1.7 JMS應用程序接口 112
8.1.8 JMS提供者實現 113
8.2 創建JMS點對點測試計劃 113
8.3 創建JMS Topic測試計劃 116
8.4 本章小結 120
第9章 服務器監控測試腳本開發 121
9.1 創建監控測試計劃 121
9.2 本章小結 125
第10章 詳解JMeter測試元件 126
10.1 詳解JMeter監聽器(Listeners) 126
10.2 詳解JMeter邏輯控制器 135
10.3 詳解JMeter配置元件 151
10.4 詳解JMeter斷言 175
10.5 詳解JMeter定時器 188
10.6 詳解JMeter前置處理器 195
10.7 詳解JMeter后置處理器 205
10.8 詳解JMeter采樣器 217
10.9 詳解JMeter其他測試元件 268
10.10 本章小結 286
第11章 JMeter進階知識 287
11.1 詳解JMeter函數和變量 287
11.2 詳解JMeter正則表達式 310
11.3 詳解JMeter遠程測試 314
11.4 詳解JMeter最佳實踐經驗 319
11.5 一些小技巧 324
11.6 本章小結 326
第12章 性能測試結果分析 327
12.1 如何分析性能測試結果 327
12.2 如何借助監聽器發現性能缺陷 330
12.2.1 監聽器——性能測試分析的基石 330
12.2.2 巧用監聽器——識別性能缺陷 354
12.3 借助Ant實現批量測試和報表生成 361
12.4 本章小結 363
第13章 JMeter性能測試實戰——電話銷售系統 364
13.1 測試背景和測試目標 364
13.2 分析確定性能測試指標 364
13.4 錄制創建性能測試腳本 366
13.5 運行性能測試腳本 369
13.6 分析性能測試結果 371
13.7 上報性能測試缺陷 374
13.8 本章小結 375
第14章 Gatling基礎知識 376
14.1 Gatling與JMeter優缺點對比 378
14.2 Gatling快速上手 379
14.3 Gatling進階指南 386
14.4 本章小結 392
第15章 Gatling詳解 393
15.1 Gatling概念 393
15.2 Gatling目錄結構 395
15.3 Gatling安裝細節與如何適配操作系統 396
15.4 Gatling配置 397
15.5 模擬器結構 399
15.6 模擬器初始化 401
15.7 場景 403
15.8 斷言 409
15.9 報告 411
15.10 本章小結 416
第16章 Gatling會話 417
16.1 Session API 417
16.2 EL 和表達式 419
16.3 填充器 420
16.4 驗證 424
16.5 本章小結 426
第17章 Gatling HTTP協議 427
17.1 HTTP協議 427
17.2 HTTP請求 433
17.3 HTTP頭 435
17.4 HTTP 檢查點 442
17.5 SSL 447
17.6 HTTP助手 448
17.7 HTTP錄制器 449
17.8 WebSocket 454
17.9 本章小結 458


第18章 Gatling JMS 459
18.1 JMS 協議 459
18.2 本章小結 461
第19章 Gatling擴展 462
19.1 Graphite 462
19.2 SBT插件 465
19.3 Maven插件 465
19.4 Jenkins插件 466
19.5 VTD XML 466
19.6 第三方插件 466
19.7 性能擴展 467
19.8 參數傳遞 467
19.9 處理JSF 467
19.10 本章小結 469
第20章 Gatling性能測試實戰——搜索引擎 470
20.1 測試目標 470
20.2 構建Gatling場景 471
20.3 運行Gatling場景,分析結果 477
20.4 本章小結 479
序: