通過案例玩轉JMeter(微課版) 版權信息
- ISBN:9787302618232
- 條形碼:9787302618232 ; 978-7-302-61823-2
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
通過案例玩轉JMeter(微課版) 本書特色
l JMeter不僅是一個性能測試工具,還是一個接口和安全測試工具。
l 看了許多網站,為什么仍舊玩不轉JMeter,答案就在本書里面。
l 通過案例教您如何使用JMeter。
l 一邊玩案例,一邊學工具,不知不覺就會了。
通過案例玩轉JMeter(微課版) 內容簡介
本書通過電子商務系統案例使讀者從實際工作出發從JMeter初學者變為高手。全書共10章。第1章介紹JMeter基礎知識和被測產品,第2章介紹HTTP/HTTPS基礎知識,第3章介紹測試腳本初始化,第4、5章介紹建立接口測試腳本的方法,第6章介紹JMeter的二次開發,第7章介紹建立安全測試腳本的方法,第8章介紹建立性能測試腳本的方法,第9章介紹JMeter的運行與性能測試監控,第10章介紹JMeter的其他元件。
本書適合軟件測試工程師閱讀,也可作為高校本科高年級學生以及研究生與軟件測試相關的課程的參考書。
通過案例玩轉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章HTTPHTTPS21
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“CSSJQuery提取器”元件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運行JMeter231
9.4性能測試監控232
9.4.1壓測端監控工具組: JMeter InfluxDB Grafana232
9.4.2被測端監控工具組: Exporter Prometheus Grafana241
9.4.3全鏈路監控工具: SkyWalking247
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
展開全部
通過案例玩轉JMeter(微課版) 作者簡介
顧翔,畢業于北京工業大學,畢業后從事軟件開發工作,2002年開始從事軟件測試工作,曾經在各大知名的互聯網公司、嵌入式軟件公司、通信公司和網絡管理軟件公司等擔任軟件測試工程師、軟件測試經理等職務,積累了豐富的軟件測試知識和實踐經驗。現專職從事軟件開發與測試、大數據及云計算相關的培訓工作,是中關村智聯軟件服務業質量創新聯盟成員,被北京軟件和信息服務業協會、北京課通天下、上海宇谷培訓公司、上海知言網絡科技有限公司和中睿信息技術有限公司聘為 講師。2014年,接受51Testing軟件測試網的專訪:《51Testing專訪顧翔——解讀開發轉測試的趣味人生》,并且在51Testhlg上發布了一系列個人專欄文章,如《測試專刊——顧翔與你一起漫談測試》和《測試專刊——白云群中話計算》等。