《軟件測試52講》
性能測試篇
28——軟件性能與性能指標
終端用戶:系統響應時間和前端展現時間
系統運維人員:軟件性能除了包括單個用戶的響應時間外,更要關注大量用戶並發訪問時的負載,以及可能的更大負載情況下的系統健康狀態、並發處理能力、當前部署的系統容量、可能的系統瓶頸、系統配置層面的調優、數據庫的調優,以及長時間運行穩定性和可擴展性。
軟件設計開發人員:軟件性能通常會包含算法設計、架構設計、性能最佳實踐、數據庫相關、軟件性能的可測試性這五大方面。
性能測試人員:性能測試工程師關注的是算法設計、架構設計、性能最佳實踐、數據庫相關、軟件性能的可測試性這五大方面
衡量軟件性能的三個最常用的指標:並發用戶數、響應時間,以及系統吞吐量。
29——性能測試的基本方法與應用領域
常用的七種性能測試方法
1、后端性能測試
后端性能測試,是通過性能測試工具模擬大量的並發用戶請求,然后獲取系統性能的各項指標,並且驗證各項指標是否符合預期的性能需求的測試手段。
2、前端性能測試
通常來講,前端性能關注的是瀏覽器端的頁面渲染時間、資源加載順序、請求數量、前端緩存使用情況、資源壓縮等內容,希望借此找到頁面加載過程中比較耗時的操作和資源,然后進行有針對性的優化,最終達到優化終端用戶在瀏覽器端使用體驗的目的
(1)減少http請求次數
(2)減少DNS查詢次數
(3)避免頁面跳轉
(4)使用內容分發網絡
(5)Gzip壓縮傳輸文件
3、代碼級性能測試
代碼級性能測試,是指在單元測試階段就對代碼的時間性能和空間性能進行必要的測試和評估,以防止底層代碼的效率問題在項目后期才被發現的尷尬。
4、壓力測試
5、配置測試
6、並發測試
7、可靠性測試
30——后端性能測試工具原理與行業常用工具簡介
后端性能測試工具的原理是什么?
1、首先,后端性能測試工具會基於客戶端與服務器端的通信協議,構建模擬業務操作的虛擬用戶腳本。
不同后端性能測試工具的虛擬用戶腳本生成器,在使用上的區別比較大:比如,LoadRunner是通過錄制后再修改的方式生成虛擬用戶腳本;而 JMeter 主要是通過添加各種組件,然后對組件進行配置的方式生成虛擬用戶腳本
2、然后,開發完成了虛擬用戶腳本之后,后端性能測試工具會以多線程或多進程的方式並發執行虛擬用戶腳本,來模擬大量並發用戶的同時訪問,從而對服務器施加測試負載。
3、接着,在施加測試負載的整個過程中,后端性能測試工具除了需要監控和收集被測系統的各種性能數據以外,還需要監控被測系統各個服務器的各種軟硬件資源。
4、最后,測試執行完成后,后端性能測試工具會將系統監控器收集的所有信息匯總為完整測試報告
業內主流的后端性能測試工具有哪些?
業內主流的后端性能測試工具 LoadRunner 和JMeter
31——前端性能測試工具原理與行業常用工具簡介
WebPageTest
32、33——基於LoadRunner實現企業級服務器端性能測試的實踐
34——企業級實際性能測試案例與經驗分享
測試類型
1、性能基准測試,可以保證新發布系統的整體性能不會下降;
2、穩定性測試,主要通過長時間模擬被測系統的測試負載,觀察系統在長期運行過程是否存在問題;
3、並發測試,往往被當作功能測試的補充去發現多線程、資源競爭、資源死鎖之類的問題。
4、容量規划測試,主要用於確定給定負載下的系統集群規模,其測試結果可以被用作系統容量設計的依據