性能測試小Tips

 1、 性能測試的目的:通過測試確認軟件是否滿足產品的性能需求,同時發現系統中存在的性能瓶頸,起到優化系統的目的。 

2、 性能測試指標的來源:測試的依據是產品的需求規格說明書;如果用戶沒有提出性能指標則根據用戶需求、測試設計人員的經驗來設計各項測試指標。

3、 性能測試的指標:服務器的各項指標(CPU使用率、內存佔用率、硬盤佔用率等)、後臺數據庫的各項指標和軟件的響應時間:

(1) 操作系統有關的指標:CPU平均利用率、內存平均佔用率、硬盤佔用率、I/O數量、網絡時延

(2) 數據庫有關的指標:I/Owait、Mem平均使用率、cpu平均使用率、在一次I/O操作中所讀的最大BLOCKS數、Log的增長情況、數據庫的訪問速度、數據庫能支持的最大用戶數、數據庫CACHE命中率、不同數據庫參數下的性能情況、鎖的處理

(3) 軟件有關的指標:交易的平均響應時間(從接收請求到回覆響應的時間)、每秒交易數量(單位時間裏的執行次數)、對中間件功能的調用、遠程處理延遲

4、 查看性能指標的命令和方法:

vmstat:虛擬內存的統計(cpu/io)

iostat:設備的IO統計

netstat:網絡活動信息統計

top:內存統計

cat /proc/meninfo:查看系統的總men大小

cat /proc/cpuinfo:查看系統總CPU大小

df –k:查看系統硬盤大小

舉例說明:

(1)查看CPU使用情況的命令

每5秒刷新一次,最右側有CPU的佔用率的數據:$ vmstat 5 

top 然後按Shift+P,按照進程處理器佔用率排序:$ top

(2)查看內存使用情況的命令

用free命令查看內存佔用情況:$ free

top 然後按Shift+M, 按照進程內存佔用率排序:$ top 

(3)查看網絡流量

可以用工具iptraf工具:$ iptraf -g

針對某個Interface的網絡流量可以通過比較兩個時間網絡接口的RX和TX數據來獲得:$ date; ifconfig eth1或$ date; ifconfig eth1

(4)查看磁盤i/o

用iostat查看磁盤/dev/sdc3的磁盤i/o情況,每兩秒刷新一次: iostat -d -x /dev/sdc3 2

用vmstat查看io部分的信息: vmstat 2

5、 常用的性能測試工具

MI:Loadrunner,

Compuware:Qaload

RationalRational PerformanceStudio

6、 性能測試開始與結束時間:

開始:系統功能測試完成之後,如果某個功能修改比較大或增加新的功能,也應該重新進行性能測試。

結束:系統滿足各項性能要求、能滿足實際使用情況並提供測試報告。

7、 性能測試、壓力測試、負載測試與容量測試:性能測試包括負載測試、壓力測試和容量測試三種主要測試類型。

(1) 性能測試:在正常的負載和配置下程序的響應時間和吞吐率。性能數據的提取通常是通過不斷調整壓力來獲得的。

(2) 壓力測試:通過改變應用程 序的輸入以對應用程序施加越來越大的負載並測量在這些不同的輸入時性能的改變,考察當前軟硬件環境下系統所能承受的最大負荷並幫助找出系統瓶頸所在,模擬 巨大的工作負荷以查看應用程序在峯值使用情況下的處理能力和承受能力。通常是通過不斷調整壓力來提取系統的最優性能數據的。

(3) 負載測試:長時間在超負荷環境中運行,程序是否能夠承擔。這其實是長時間的大壓力測試,主要檢查系統的穩定性(比如程序在負載的時候是否會 coredump)以及系統的資源佔用情況是否合理(是否出現內容泄露或CPU爆漲或某資源使用之後不釋放)或者是否會出現異常(比如系統不能正常運 行)。

(4) 容量測試:使程序經受大容量數據處理的檢驗,一般地說針對數據庫而言,是在數據庫中有較大數量的數據記錄情況下對系統進行的測試。

8、 性能測試方案的要素:

(1) 確定性能指標

(2) 設計測試場景

(3) 確定需要測試收集的數據

(4) 確定測試方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章