我怎麼做效能測試

2021-07-25 20:10:45 字數 2140 閱讀 4687

今天和同事交流關於

效能測試

的東西,以前也做過效能測試,突然想寫點自己關於如何做效能測試的認識。

基於b/s架構的系統,利用loadrunner做效能測試,利用nmon監控系統資源(用linux自帶的top,vmstat等命令也可以,寫一些簡單的

shell

指令碼就行了)。

那麼到底該怎麼去做效能測試呢?

1、首先要了解被測系統的結構和有關知識的儲備。

了解了被測系統,在後期效能出現異常的時候,定位就相對容易一些;而且知道在測試的過程中需要監控什麼。

乙個簡單b\s系統結構圖:

該系統有一下及部分組成:

web和應用伺服器

memcached:負責做資料快取

lucene:負責做搜尋

rabbitmq:負責某些業務的佇列處理

mysql:

資料庫伺服器,乙個主庫,乙個從庫

從以上系統結構來看,要搭建和維護效能測試環境,需要的一些必要的知識。

對於memcached:怎麼搭建memcached,怎麼檢視命中率,memcached的作用是什麼

lucene:這個lucene是幹什麼用的,要怎麼配置

rabbitmq:mq要如何配置,都那些業務用到了mq。

mysql:如何配置主從,為什麼要配置主從,主從如何同步等等

在搭建環境的過程中肯定會遇到這樣或那樣的問題,要自己找資料,或者相關的開發人員一起解決,並注意做筆記,防止以後同樣的問題再出現。

2、了解了系統結構,開始搭建測試環境,並準備資料。

測試環境盡量要和生產環境的結構保持一致,還有配置檔案等也要保持一致,這樣能保證效能測試的結果更加真實和接近生產環境。

資料準備一定要充足,而且資料量要大於等於生產環境,這樣能更真實的模擬生產環境。比如對乙個select語句而言,10w的資料,和1000w的資料,查詢時間肯定有差別。如果資料量太小就不能反映真實情況下效能了。(可以把線上的資料匯入到測試環境,但是要注意把使用者比較隱私的資料都替換掉)

如果有可能的話,測試環境的資料要比生產環境多出20%,做一些效能上邊的冗餘,防止發生突然的效能尖峰。

3、了解需求,找出測試點

和產品、技術溝通需要做效能測試的業務;並了解相應的業務的效能指標,如頁面的響應時間,tps(事物處理)或者系統期望能承受多少併發等。

4、設計效能能測試用例

根據業務編寫相應的效能測試用例。

目的方法

採用loadrunner的錄製工具錄製乙個郵件傳送過程,然後對指令碼進行優化,加上事物點,檢查點等。過程中監視b端的響應,還有網路傳輸,web服務和資料庫伺服器的效能,並觀察伺服器相應服務的日誌,檢查mq的狀態,memcached伺服器的狀態和效能

預期結果

符合業務的預期,日誌木有異常等(不詳細列舉)

5、編寫並優化指令碼

根據測試用例錄製發帖的指令碼,加入事物點、檢查點、引數化,並回放,確保指令碼沒有問題,可以正常執行。

6、設計效能測試場景

設定乙個漸進的場景10-30-60-100-150-200,這麼做的目的防止一下子上去就是200個併發,出了問題,不知道系統最佳的併發是多少。

(上邊的漸進場景不一定合理,只做示意)

7、啟動監控,並開始跑效能測試場景

設定場景完畢後,開始在伺服器端啟動監控,然後開始啟動場景。

8、監控場景執行,監控伺服器的資源

loadrunner可以蒐集一些效能測試資料,事物的pass數,fail數,error數,都要做統計。

監控伺服器的資源,可以利用nmon,也可以是用linux自帶的命令top,vmstat等。

也要監控伺服器的日誌輸出,看是否有異常出現。例如:檢視mysql的慢日誌,nginx的日誌等。

9、蒐集結果資料,分析**

最後對效能測試蒐集的資料進行分析,找出效能測試的拐點。

10、對系統進行優化,並重複7-9步,直至測試結束

ps:效能測試不是乙個人的事情,中間設計了,開發,產品,運維,qa,dba,要大家共同協作,才能做好效能測試。

限於水平有限,用疏漏之處,多多包涵。

效能測試應該怎麼做?

比如路透的定義 99.9 的響應時間必需在1ms之內,平均響應時間在1ms以內,100 的請求成功。測試用的資料,需要有大中小各種尺寸的資料,並可以混合。最好使用生產線上的測試資料。然後收集cpu,記憶體,硬碟 網路io,等指標,檢視系統是否穩定,比如,cpu是平穩的,記憶體使用也是平穩的。那麼,這...

效能測試分析怎麼做

效能測試旨在確定系統的效能以衡量效能問題,驗證系統的效能質量屬性,例如在各種負載條件下的響應性,速度,可伸縮性,穩定性.在混合負載條件下對系統進行了測試,並檢查了系統在各種工作負載下響應所需的時間。軟體效能測試涉及對被測應用程式的測試,以確保應用程式在各種負載條件下都能按預期工作。效能測試的目標不僅...

如何做效能測試怎麼做的

做效能需求分析,挑選了使用者使用最頻繁的功能來做效能測試,比如 登陸,開啟系統首頁,搜尋,提交訂單,確定效能指標,比如 事務通過率為100 90 的事務響應時間不超過3秒,cpu和記憶體的使用率為70 以下。搭建效能測試環境,準備好效能測試資料。使用jmeter開發優化指令碼,包括 引數化,斷言,關...