發表於2024-11-05
《軟件性能測試過程詳解與案例剖析(第2版)》不僅僅是一本講述軟件性能測試基礎知識的書,也不是一本工具的使用手冊,當然更不是一本入門類的書籍。本書麵嚮具有一定測試基礎,期望能夠通過實際案例去感受和領悟性能測試的測試工程師。書中包含瞭作者多年在性能測試方麵的經驗總結,其中精選的案例覆蓋多種架構和平颱,涉及多個行業,可對實際工作起到直接的指導作用,同時,本書包含瞭所有會在性能測試中使用的模闆,稍加修改即可應用在實際項目中。
本書可以作為軟件測試人員、軟件項目經理和需要瞭解軟件性能測試的各級軟件管理人員的參考手冊,也可作為高校軟件性能測試課程的輔助教材。
第一部分 基礎篇
第1章 軟件性能測試的基本概念
1.1 什麼是軟件性能
1.1.1 用戶視角的軟件性能
1.1.2 管理員視角的軟件性能
1.1.3 開發視角的軟件性能
1.1.4 Web前端性能
1.1.5 總結
1.2 軟件性能的幾個主要術語
1.2.1 響應時間
1.2.2 並發用戶數
1.2.3 吞吐量
1.2.4 性能計數器
1.2.5 思考時間
1.3 軟件性能測試方法論
1.3.1 SEI負載測試計劃過程
1.3.2 RBI方法
1.3.3 性能下降麯綫分析法
1.3.4 LoadRunner的性能測試過程
1.3.5 Segue提供的性能測試過程
1.3.6 敏捷性能測試
1.3.7 本書提供的性能測試模型
1.4 本章小結
第2章 性能測試的應用領域
2.1 性能測試的方法
2.1.1 驗收性能測試
2.1.2 負載測試
2.1.3 壓力測試
2.1.4 配置測試
2.1.5 並發測試
2.1.6 可靠性測試
2.1.7 失效恢復測試
2.2 性能測試應用領域分析
2.2.1 能力驗證
2.2.2 規劃能力
2.2.3 性能調優
2.2.4 缺陷發現
2.2.5 性能基準比較
2.2.6 總結
2.3 本章小結
第3章 性能計數器及性能分析方法
3.1 操作係統計數器及分析
3.1.1 Windows操作係統的主要計數器
3.1.2 UNIX/Linux操作係統的主要計數器
3.1.3 內存分析方法
3.1.4 處理器分析方法
3.1.5 磁盤I/O分析方法
3.1.6 進程分析方法
3.1.7 網絡分析方法
3.2 應用服務器計數器
3.2.1 IIS應用服務器計數器
3.2.2 J2EE應用服務器計數器
3.3 數據庫服務器計數器
3.4 本章小結
第4章 性能測試工具原理
4.1 服務端性能測試工具架構
4.2 前端性能測試工具原理
4.3 選擇服務端性能測試腳本使用的協議
4.4 性能測試工具的選擇與評估
4.4.1 創建和購買的選擇
4.4.2 測試工具的評估和選擇過程
4.5 本章小結
第5章 性能測試的組織
5.1 性能測試團隊的人員構成
5.2 性能測試過程模型(PTGM)
5.2.1 測試前期準備階段
5.2.2 測試工具引入階段
5.2.3 測試計劃階段
5.2.4 測試設計與開發階段
5.2.5 測試執行與管理
5.2.6 測試分析
5.3 敏捷性能測試模型(APTM)
5.3.1 APTM的檢查錶
5.3.2 APTM中的活動
5.3.3 環境與工具
5.4 本章小結
第6章 Web前端性能
6.1 前端性能示例
6.2 HTTP概要
6.2.1 HTTP協議結構
6.2.2 典型的HTTP請求與響應分析
6.2.3 與前端性能相關的頭信息
6.3 瀏覽器打開URL的方式
6.3.1 連接到URL所在服務器
6.3.2 獲取頁麵對應的HTML文檔
6.3.3 解析文檔並獲取所需要的資源
6.3.4 頁麵上的JS文件與CSS文件
6.3.5 onload事件
6.4 提高前端性能的方法
6.4.1 減少網絡時間
6.4.2 減少發送的請求數量
6.4.3 提高瀏覽器下載的並發度
6.4.4 讓頁麵盡早開始顯示
6.4.5 其他
6.5 單機前端性能工具
6.5.1 Firebug工具
6.5.2 HttpWatch工具
6.5.3 Chrome自帶的開發工具
6.5.4 Page Speed工具
6.5.5 DynaTrace AJAX Edition工具
6.5.6 單機前端性能測試工具小結
6.6 監控用戶體驗到的前端性能
6.6.1 在頁麵上增加計時點
6.6.2 使用JavaScript庫簡化計時點工作
6.6.3 將計時信息發送給服務器
6.7 本章小結
第二部分 實踐篇
第7章 案例1 某製造型企業信息化項目的性能測試
7.1 項目背景
7.2 項目特點
7.3 性能測試過程
7.3.1 測試前期準備
7.3.2 測試工具引入
7.3.3 測試計劃
7.3.4 測試設計與開發
7.3.5 測試執行與管理
7.3.6 測試分析
7.4 案例小結
第8章 案例2 某省電信公司業務係統的性能測試
8.1 項目背景
8.2 項目特點
8.3 性能測試過程
8.3.1 測試前期準備
8.3.2 測試工具引入
8.3.3 測試計劃
8.3.4 測試設計與開發
8.3.5 測試執行與管理
8.3.6 測試分析
8.4 案例小結
第9章 案例3 某通信企業Web業務係統的性能測試
9.1 項目背景
9.2 項目特點
9.3 性能測試過程
9.3.1 測試前期準備
9.3.2 測試工具引入
9.3.3 測試計劃
9.3.4 測試設計與開發
9.3.5 測試執行與管理
9.3.6 測試分析
9.4 案例小結
第10章 案例4 某集成商的性能選型測試
10.1 項目背景
10.2 項目特點
10.3 性能測試過程
10.3.1 測試前期準備
10.3.2 測試工具引入
10.3.3 測試計劃
10.3.4 測試設計與開發
10.3.5 測試執行與管理
10.3.6 測試分析
10.4 案例小結
第三部分 工具篇
第11章 LoadRunner快速入門手冊
11.1 LoadRunner的性能測試流程
11.2 LoadRunner腳本開發
11.2.1 基本錄製
11.2.2 修正測試腳本
11.2.3 Run-Time Setting
11.2.4 單機運行測試腳本
11.3 Tools(工具)菜單
11.4 LoadRunner 場景設置
11.4.1 Manual Scenario
11.4.2 Manual Scenario with Percentage Mode
11.4.3 Goal-Oriented Scenario
11.4.4 啓用IP Spoofer(IP 欺騙)
11.5 LoadRunner場景監視設置
11.5.1 Windows Resources
11.5.2 IIS 服務器
11.5.3 UNIX/Linux Resources
11.5.4 WebLogic Server
11.5.5 Apache Server
11.5.6 數據庫服務器
11.6 LoadRunner的Analysis應用
11.6.1 基本操作
11.6.2 圖錶的歸並(Merge)操作
11.6.3 圖錶的自動關聯(Auto Correlate)操作
11.6.4 性能測試結果比較
第12章 LoadRunner高級使用技巧
12.1 參數化技巧
12.1.1 LoadRunner的參數化操作
12.1.2 不同類型的參數
12.2 關聯技巧
12.2.1 LoadRunner中的主要關聯函數
12.2.2 LoadRunner的自動關聯操作
12.2.3 LoadRunner的手工關聯操作
12.3 調試技巧
12.3.1 斷點
12.3.2 單步跟蹤
12.3.3 Log輸齣
12.3.4 使用對話框輸齣
12.3.5 以TreeView模式查看返迴數據
12.4 其他技巧
12.4.1 設置域登錄的用戶名和口令
12.4.2 檢查返迴數據的正確性
12.4.3 調用外部函數
第13章 JMeter應用手冊
13.1 JMeter入門
13.1.1 JMeter基礎概念
13.1.2 建立第一個簡單的JMeter Test Plan
13.2 用JMeter測試一個進銷存應用
13.2.1 被測應用介紹
13.2.2 錄製測試計劃
13.2.3 調試Test Plan
13.2.4 關聯Test Plan中的Sampler
13.2.5 參數化Test Plan
13.2.6 HTTP屬性管理器
13.2.7 為Test Plan增加邏輯控製
13.2.8 使用Timer讓Test Plan更準確地模擬用戶行為
13.3 擴展JMeter
13.3.1 使用BeanShell類組件
13.3.2 基於Java Request Sampler定製Sampler的行為
13.4 JMeter的分布式測試功能
附錄A 部分有價值的腳本和數據處理技巧
A.1 在UNIX平颱上寫日誌的Perl腳本
A.2 在UNIX平颱上記錄單個進程內存使用的Perl腳本
A.3 用於模擬發送數據的Socket進程 (Perl適用於UNIX和Windows平颱)
A.3.1 用於實現Socket監聽和發送的主代碼
A.3.2 用於發送數據的代碼
A.4 用Excel處理規則的記錄數據
附錄B 性能測試過程中使用的模闆
B.1 性能測試團隊成員職責技能描述錶
B.2 性能測試工具需求規劃錶
B.3 性能測試環境調查錶
B.4 典型業務列錶
B.5 業務用例描述
B.6 場景列錶
B.7 測試計劃
B.8 測試環境檢查錶(CheckList)
B.9 測試執行記錄日誌
B.10 性能測試分析報告
參考文獻
大多數測試工程師對“性能測試”這個名詞並不陌生,即使沒有真正參與過性能測試項目,在各個論壇或網站上也經常見到這個名詞。然而,究竟什麼是軟件性能?軟件性能測試究竟該如何開展?軟件性能測試到底測試瞭些什麼?這些問題恐怕就不是每個測試工程師都能清楚地迴答齣來的瞭。
其實,在日常工作中,每個測試工程師基本上都會遇到和軟件性能、軟件性能測試相關的內容。迴想一下我們接觸到的用戶需求,經常會有類似如下的描述:“要求某某係統對用戶的操作能快速反應”、“要求某某係統能夠在大量用戶同時使用時保持穩定運行”等。實際上,這些就是用戶對軟件係統提齣的樸素的性能要求,雖然這些性能要求不是那麼顯而易見的,在實際的測試中也可能會被忽略,但無論如何,這些描述至少說明瞭性能要求其實是大部分用戶對軟件係統的一個基本要求。
在開始真正描述軟件性能測試之前,先來迴顧一下對軟件性能認識的曆程。如果從世界上第一颱計算機誕生開始算起,軟件的存在已經有相當時間的曆史瞭(以軟件行業的時間概念來說),在以前的DOS時代,甚至是Windows 95時代,好像很少聽到對軟件性能的抱怨,但為什麼在近幾年,對軟件性能的關注突然變得強烈起來瞭呢?這種變化究竟是什麼原因造成的呢?
在DOS和Windows 95時代,我們接觸到的大量應用都是單機應用,對這些應用,其實也存在性能方麵的要求(想想看,是不是曾經因為某個遊戲運行不流暢、單擊瞭IDE工具的“編譯”命令後需要等待10分鍾甚至更長而抱怨自己的機器?)。但對這類單機應用來說,程序運行的速度基本上隻與運行程序的主機有關,因此,隻需要更換運行程序的設備就能很好地解決這個問題。所以,雖然用戶會覺得程序運行速度慢,但由此引起的抱怨一般都會直接針對計算機設備和資金不足,而不會瞄準運行慢的軟件。而近幾年來,隨著軟件係統規模和復雜程度的增加,我們接觸到的係統(如OA係統、信息管理係統等)都變得越來越強大。在結構上,這些係統大多采用C/S或B/S架構,采用多種分布式應用技術,具有幾百、幾韆甚至上萬的用戶數量。由於其采用的是C/S或B/S架構,大量的運算和處理都被集中到服務端來實現,這種變化使得軟件係統的性能影響因素變得龐雜,很難通過更換設備來解決。這時,采用類似單機時代的“更換更好的設備”的方法,無論從經濟性還是可實現性的角度來考慮,都完全不能滿足需要,對性能的關注纔越來越多地集中在應用係統本身,而不僅僅是運行係統的設備上。
對應用係統本身性能的關注和軟件性能的復雜性催生瞭專門的“性能測試工程師”職位,據統計,性能測試工程師的工資水平遠遠超過瞭一般的測試工程師,然而到目前為止,在從業人員數量和質量上來看,國內性能測試人纔的缺口還是非常大的,尤其是真正能夠承擔大型係統性能測試工作的工程師更加稀少。
軟件性能和軟件性能測試的復雜性是顯而易見的。首先,一個軟件係統性能錶現的相關因素非常多,網絡環境、數據庫服務器、應用服務器、業務邏輯的實現方式、係統采用的架構、代碼優化的程度、使用者的使用方式等都會對係統的性能錶現造成影響,在這種情況下開展性能測試,殊為不易。
本書是一本專門描述軟件性能測試的書,對沒有太多性能測試經驗的讀者來說,本書的作者力圖使它成為一本手冊或是實踐指南;對於已經進行過一些性能測試的,具有一定的性能測試經驗的讀者來書,本書也希望能夠為其提供一定的啓發。本書的作者結閤自己在性能測試方麵的經驗,對軟件性能測試的概念、性能測試的組織等進行瞭闡述;同時,通過貫穿全書的大量精心選擇的實例描述,作者期望本書為每一位讀者帶來性能測試的體會和體驗。
本書的組織結構
本書圍繞基礎、案例、工具三個方麵組織,給齣瞭軟件測試的基礎知識,介紹瞭軟件性能測試過程,提供瞭通用的軟件測試過程模型(PTGM),給齣瞭敏捷軟件測試模型(ATPM)。隨後,本書盡可能具體地展示瞭一些有價值的實例,在實例中展示瞭如何係統地開展性能測試。此外,考慮到Web前端性能已經是一個非常熱門的性能方嚮,本書專門設置瞭一章描述Web前段性能測試和調優。
各章內容介紹
“基礎篇”包括第1章~第6章。
第1章首先介紹軟件性能測試相關的一些基本概念,重點闡述不同視角的軟件性能,對並發用戶數、響應時間、吞吐量等軟件性能測試中的常見術語進行詳細解釋和討論,並對軟件性能測試中經常使用的一些方法進行簡要的描述。
第2章介紹軟件性能測試應用領域的概念,將軟件性能測試的應用範圍劃分為能力驗證、規劃能力、性能調優、缺陷發現以及性能基準比較5個應用領域。領域的概念使性能測試工程師可以更好地明確性能測試項目的目標,確定閤適的性能測試方法。
第3章和第4章分彆討論性能計數器和性能測試工具的原理。在第3章中,重點討論操作係統、應用服務器和數據庫係統常用的性能計數器,並給齣利用性能計數器進行性能分析的方法;在第4章中,以典型的係統級性能測試工具LoadRunner為例,展示瞭服務端性能測試工具的原理,並簡要介紹瞭前端性能測試工具的原理。
第5章是本書的重點章節,該章引入瞭通用的性能測試過程模型(PTGM)和結閤瞭敏捷思想的模型(ATPM),詳細描述瞭PTGM模型的各個階段及每個階段的活動,並介紹瞭ATPM模型中的檢查錶、活動與工具。該章的內容可以作為性能測試項目的有效參考,幫助讀者全麵瞭解如何規劃和執行一個性能測試項目。
第6章是本書第二版中新增加的章節,該章描述瞭Web前端性能的主要原理、性能評估方法以及主要的前端性能工具,對前端性能進行瞭細緻的探討和較為深入的分析。
“實踐篇”包括第7章~第10章。
第7章~第10章圍繞4個具體的項目展開,每個項目的描述方式都嚴格遵循第5章的PTGM模型步驟和活動,另外,在每個案例的描述中,針對案例本身的特點,還同時介紹瞭許多在性能測試中可用的技巧(如時間戳的技巧、處理驗證碼的方法、sessionID的概念等)。
“工具篇”包括第11章~第13章。
“工具篇”給齣瞭一些非常有價值的工具資料,考慮到讀者具有不同的技能基礎,第11章麵嚮沒有性能測試工具使用經驗的讀者,給齣瞭一份簡潔但全麵的LoadRunner快速入門手冊;第12章則針對較為熟悉LoadRunner的用戶,在第11章的基礎上給齣瞭LoadRunner的高級使用技巧描述;對於更願意采用開源解決方案的用戶,第13章給齣瞭JMeter工具的使用描述,包括基礎和進階操作。已經有一定性能測試基礎的讀者應該可以通過本章很快建立對JMeter的應用認識,達到熟練使用JMeter工具的目的。
“附錄”則包含瞭其他一些實用資料。附錄A給齣瞭一些性能測試過程中可能使用到的有價值的腳本和數據處理技巧;附錄B則給齣瞭性能測試過程中使用的模闆。
閱讀建議
“基礎篇”是自成
軟件性能測試過程詳解與案例剖析(第2版) 下載 mobi epub pdf txt 電子書 格式
軟件性能測試過程詳解與案例剖析(第2版) 下載 mobi pdf epub txt 電子書 格式 2024
軟件性能測試過程詳解與案例剖析(第2版) 下載 mobi epub pdf 電子書傢裏的專業人士說不是太實用,類彆教單一。
評分挺實用的
評分沒有塑料包裝,書角有點摩擦,
評分看評論說不錯,買來研究
評分沒多大感覺,講的不詳細
評分書像是盜版的,裏麵的插圖不清楚。有些失望。
評分第二版學習下,講解比較清晰,值得推薦
評分送貨超快,剛剛好
評分還沒看,應該不錯
軟件性能測試過程詳解與案例剖析(第2版) mobi epub pdf txt 電子書 格式下載 2024