介面效能測試(Jmeter 操作總結

2021-07-27 05:48:52 字數 1330 閱讀 7031

以前常用soapui來做介面的效能測試,這次用的jmeter,對需由客戶端根據時間戳等登入引數生成隨機token值和印籤值來發請求的系統,非它莫屬了。下面就這次測試的難點和操作注意問題展開總結。

1.指令碼準備:

測試中,傳送的請求體以json**為主,且每個介面要求有token值和印籤值(根據請求的body引數生成),因此採取在請求前新增前置處理器beanshellpreprocessor,來處理token和印籤值,下面以「常客登入」為例進行說明。

3)jmeter請求前新增前置處理器beanshellpreprocessor,指令碼如下:

import com.air.keygen.*;//引用jar包中寫入的方法

string body =",\n" +

" \"data\": \n" +

string airsign = generator.getkey(body);

vars.put("airsign",airsign);  //輸出引數hnairsign

vars.put("body",body);  //輸出引數body

3)請求體呼叫beanshellpreprocessor指令碼生成的引數airsign和body。

如常客登入的請求url為:https://..../login?hnairsign=$,請求體body data為:$。

2. 其它設定項

1). 本次測試用的https協議,先準備本系統的證書檔案(.crt檔案),然後匯入認證檔案至jmeter(選單-選項-ssl管理器,選擇要匯入的證書檔案),在jmeter的sampler中,協議選擇https即可。

3). 隨機資料生成。由於乙個請求指令碼中會多次用到同乙個引數,因此,新增乙個前置處理器:使用者引數,設定名稱和值,值呼叫隨機函式隨機生成。如:名稱idno,值$,名稱mobile,值$ ,對應的引用指令碼修改為:"idno\": \"testa$\","mobile\": \"189$\"。

3.分布式壓測

1)測試環境準備。本次採用兩台測試機分布式壓測,兩台機在同一網段,先準備好兩台機的jmeter版本及jdk版本一致,避免不必要的錯誤,將測試指令碼和引數化檔案,分別放到相同的目錄下。

2)引數設定。環境準備好後,先準備一台機做主機,一台做從機,在主機端的jmeter的bin檔案中,用記事本開啟jmeter.properies檔案,找到remote_hosts並設定值為從機的ip,如:remote_hosts=192.198.0.26,預設埠號為1099,

3)分布式執行。儲存好設定後,先執行從機的jmeter-sever.bat,再執行主機的的jmeter.bat,在選單執行下方的遠端啟動下,可以檢視到從機和主機的ip,此時可以根據併發情況,分別選擇一台機或兩台機同時進行測試。

基於介面的效能測試入門(Jmeter)

好久沒發文了,今天聊一下效能測試。這是一篇關於效能測試的入門文章,沒有涉及到高大上的全鏈路壓測等等,純粹是給剛上手效能測試的小白乙個簡單的了解。當然對於一些使用者量不大 沒有做過效能測試的產品,這些入門的方法完全可以填補上效能測試這個空白。我們首先了解下關於效能測試的幾種測試場景 一般來說,對於乙個...

jmeter做SOAPui介面的效能測試

url 可以直接複製帶引數請求的url,3320那原來是個?soap xml rpc data 那裡直接複製帶引數請求的部分 3320 send soapaction 這裡先不填任何東西,重新回到soapui中,切換到request 1中的raw部分,如下圖 將藍色框裡的http鏈結貼上到jmete...

效能測試 Jmeter

如何更快速的入門jmeter 建議通過錄製指令碼的方式,快速的了解乙個效能測試應該包括的元件以及它們的層級關係。關於錄製方式,請參考 jmeter基礎之 錄製指令碼 如下,通過badboy 工具錄製的乙個指令碼 指令碼過程 登入 126郵箱,給自己發一封郵件,祝自己聖誕快樂!並可以方便的將指令碼匯出...