通過案例玩轉 JMeter (微課版)
顧翔
買這商品的人也買了...
-
$602Oracle 數據庫管理員日常操作手冊
-
$403Oracle DBA 高可用備份恢復與性能優化
-
$301軟件自動化測試開發
-
$480$360 -
$450$338 -
$480$408 -
$254SEO 搜索引擎優化 — 百度與淘寶 SEO 實戰
-
$390$371 -
$880$695 -
$354$336 -
$534$507 -
$580$458 -
$599$509 -
$680$537 -
$588$559 -
$580$493 -
$954$906 -
$650$507 -
$550$468
相關主題
商品描述
本書通過電子商務系統案例使讀者從實際工作出發從JMeter初學者變為高手。全書共10章。第1章介紹JMeter基礎知識和被測產品,第2章介紹HTTP/HTTPS基礎知識,第3章介紹測試腳本初始化,第4、5章介紹建立接口測試腳本的方法,第6章介紹JMeter的二次開發,第7章介紹建立安全測試腳本的方法,第8章介紹建立性能測試腳本的方法,第9章介紹JMeter的運行與性能測試監控,第10章介紹JMeter的其他元件。 本書適合軟件測試工程師閱讀,也可作為高校本科高年級學生以及研究生與軟件測試相關的課程的參考書。
目錄大綱
目錄
第1章測試軟件和被測產品/1
1.1JMeter概述/1
1.2JMeter的安裝/2
1.2.1JMeter的單機環境安裝/2
1.2.2JMeter的分佈式環境安裝/4
1.3進入JMeter的世界/5
1.3.1JMeter的目錄結構及多語言版本/5
1.3.2JMeter的界面/7
1.3.3JMeter的九大元件組/11
1.4被測產品: 電子商務系統/13
1.4.1被測產品的介紹/13
1.4.2被測產品的安裝/14
1.4.3被測產品的模塊/15
1.4.4被測產品的安全機制/19
第2章HTTP/HTTPS/21
2.1HTTP的工作原理/21
2.2HTTP的請求包和響應包/22
2.2.1HTTP的請求包/22
2.2.2HTTP的響應包/24
2.3HTTP的無連接性和無狀態性/24
2.3.1HTTP的無連接性/24
2.3.2HTTP的無狀態性/25
第3章測試腳本初始化/27
3.1測試腳本的初始化生成/27
3.1.1利用工具錄制JMeter測試腳本/28
3.1.2錄制HTTPS下的腳本/37
3.1.3自己建立JMeter測試腳本/43
3.2錄制結果的驗證/45
3.3腳本初始化中使用的JMeter基本元件/46
3.3.1“測試計劃”元件/46
3.3.2“HTTP Cookie管理器”元件/48
3.3.3“HTTP信息頭管理器”元件/49
3.3.4“用戶定義的變量”元件/50
3.3.5“HTTP請求默認值”元件/50
3.3.6“HTTP代理服務器”元件/53
3.3.7“線程組”元件/56
3.3.8“setUp線程組”和“tearDown線程組”元件/58
3.4腳本初始化中使用的取樣器/59
3.4.1“HTTP請求”元件/59
3.4.2“調試取樣器”元件/61
3.5腳本初始化中使用的邏輯控制器/63
3.5.1“錄制控制器”元件/63
3.5.2“循環控制器”元件/63
3.6腳本初始化中使用的監聽器/64
3.6.1“察看結果樹”元件/64
3.6.2“簡單數據寫入器”元件/68
3.6.3“用表格察看結果”元件/68
目錄
第4章建立登錄接口測試腳本/69
4.1登錄接口測試腳本的建立/69
4.1.1生成密碼的SHA256散列值/69
4.1.2對CSRF token的處理/70
4.1.3建立測試斷言/75
4.1.4用戶名和密碼的參數化/79
4.1.5建立“setUp線程組”元件與“tearDown線程組”元件/84
4.2J2EE版本商品列表的接口測試腳本/90
4.3登錄接口測試腳本中使用的散列函數/94
4.4登錄接口測試腳本中使用的斷言/96
4.4.1“響應斷言”元件/96
4.4.2“BeanShell斷言”元件/98
4.4.3與XML相關的斷言/100
4.5登錄接口測試腳本中使用的提取器/102
4.5.1“正則表達式提取器”元件/102
4.5.2“邊界提取器”元件/103
4.5.3“XPath提取器”元件/104
4.5.4XPath2 Extractor元件/105
4.6登錄接口測試腳本中使用的配置元件/106
4.6.1CSV Data Set Config元件/106
4.6.2JDBC Connection Configuration元件/108
4.6.3“計數器”元件/110
4.7登錄接口測試腳本中使用的取樣器/111
第5章建立其他接口測試腳本/113
5.1與註冊相關的測試腳本/113
5.1.1建立正常註冊功能的接口測試腳本/113
5.1.2建立異常註冊功能的接口測試腳本/117
5.1.3清理註冊功能測試產生的垃圾數據/121
5.1.4處理與登錄相關的元件/122
5.2與商品相關的接口測試腳本/122
5.2.1查詢商品接口測試腳本/123
5.2.2Django版本查看商品詳情接口測試腳本/124
5.2.3J2EE版本查看商品詳情接口測試腳本/127
5.2.4通過後台添加商品測試腳本/132
5.3與購物車相關的接口測試腳本/136
5.3.1添加購物車的接口測試腳本/136
5.3.2查看購物車的接口測試腳本/138
5.4與訂單相關的接口測試腳本/139
5.4.1與訂單相關的接口測試腳本初始化/139
5.4.2創建與訂單相關的接口測試腳本/141
5.5與註冊、商品、購物車、訂單相關的接口測試腳本中使用的邏輯控制器/145
5.5.1“僅一次控制器”元件/145
5.5.2“簡單控制器”元件/145
5.5.3“如果(If)控制器”元件/146
5.6與註冊、商品、購物車、訂單相關的接口測試腳本中使用的函數助手/147
5.6.1隨機函數/147
5.6.2CSVRead函數/148
5.7與註冊、商品、購物車、訂單相關的接口測試腳本中使用的提取器/149
5.7.1“CSS/JQuery提取器”元件/149
5.7.2與JSON相關的提取器/151
5.8與註冊、商品、購物車、訂單相關的接口測試腳本中使用的斷言/161
5.8.1“JSON斷言”元件/162
5.8.2JSON JMESPath Assertion元件/162
5.9與註冊、商品、購物車、訂單相關的接口測試腳本中使用的取樣器/163第6章JMeter二次開發/166
6.1JMeter二次開發的3種方法/166
6.1.1開發BeanShell調用外部JAR文件實現SHA256散列處理/166
6.1.2開發函數助手實現SHA256散列處理/169
6.1.3利用Java請求實現SHA256散列處理/173
6.2JMeter二次開發中使用的元件/181
6.2.1前置/後置處理器/181
6.2.2取樣器: “Java請求”元件/183
第7章建立安全測試腳本及運行/185
7.1暴力破解測試方法及預防措施/185
7.1.1暴力破解的原理和預防措施/185
7.1.2暴力破解的測試方法/186
7.2篡改找回密碼的郵件地址和手機號碼的測試方法/189
7.2.1篡改找回密碼的郵件地址的測試方法/189
7.2.2篡改找回密碼的手機號碼的測試方法/190
7.3橫向越權和縱向越權的測試方法/191
7.3.1橫向越權的測試方法/191
7.3.2縱向越權的測試方法/196
7.4安全測試中使用的邏輯控制器/197
7.4.1“模塊控制器”元件/198
7.4.2“ForEach控制器”元件/198
7.5安全測試中使用的“測試片段”元件/199
第8章建立及運行性能測試腳本/200
8.1單場景性能測試的搭建/200
8.2多場景性能測試的搭建/203
8.2.1搭建Django版本的多場景性能測試/203
8.2.2搭建Django版本與J2EE版本共同的多場景性能測試/205
8.3性能測試的執行/206
8.3.1並發負載測試的執行/206
8.3.2容量負載測試的執行/211
8.3.3疲勞性測試的執行/213
8.3.4強度測試的執行/213
8.4性能測試中使用的邏輯控制器: “吞吐量控制器”元件/214
8.5性能測試中使用的斷言: “斷言持續時間”元件/215
8.6性能測試中使用的配置元件: “HTTP緩存管理器”元件/216
8.7性能測試中使用的定時器/217
8.7.1“同步定時器”元件/217
8.7.2“固定定時器”元件/218
8.7.3“統一隨機定時器”元件/218
8.7.4“高斯隨機定時器”元件/218
8.7.5“泊松隨機定時器”元件/219
8.8性能測試中使用的監控器/220
8.8.1“聚合報告”元件/220
8.8.2“匯總報告”元件/221
8.8.3“匯總圖”元件/222
8.8.4“響應時間圖”元件/223
8.8.5“圖形結果”元件/225
第9章JMeter性能測試的運行與監控/226
9.1通過JMeter自帶的工具運行JMeter性能測試/226
9.2通過Apache Ant運行JMeter性能測試/227
9.3通過Taurus運行JMeter/231
9.4性能測試監控/232
9.4.1壓測端監控工具組: JMeter+InfluxDB+Grafana/232
9.4.2被測端監控工具組: Exporter+Prometheus+Grafana/241
9.4.3全鏈路監控工具: SkyWalking/247
9.5性能測試監控中使用的元件: 後端監聽器/252
第10章JMeter的其他元件/255
10.1邏輯控制器/255
10.1.1“While控制器”元件/255
10.1.2“Switch控制器”元件/256
10.1.3“交替控制器”元件/257
10.1.4“Runtime控制器”元件/258
10.1.5“隨機控制器”元件/258
10.1.6“隨機順序控制器”元件/258
10.2斷言/259
10.2.1“大小斷言”元件/259
10.2.2“HTML斷言”元件/260
10.2.3“MD5Hex斷言”元件/261
10.3定時器/261
10.3.1“常數吞吐量定時器”元件/262
10.3.2“準確的吞吐量定時器”元件/262
10.4取樣器/263
10.4.1“FTP取樣器”元件/263
10.4.2“OS進程取樣器”元件/264
10.4.3“JUnit取樣器”元件/267
10.5配置元件/270
10.5.1“FTP默認請求”元件/270
10.5.2“Java默認請求”元件/270
10.5.3簡單配置元件/270
10.5.4“隨機變量”元件/271
附錄AJMeter元件中英文術語對照/273
參考文獻/277