必須掌握的階梯式性能指標監聽!


 

概述

我們在進行階梯式壓力測試的時候,聚合報告生成的結果是一個匯總數據。並不會階梯式的統計壓測性能數據。這樣我們就不能去對比不同階梯壓力下的性能數據變化趨勢。

期望

假設現在一共會加載100個線程,我期望聚合報告中分別展示1-20,20-40,40-60,60-80的四個階段的線程並發性能數據,而不是一共總體的統計數據。

 

實現

jmeter本身不具備這樣的工具,需要通過自定義代碼去實現

 

1:添加階梯線程組

測試計划》添加》Threads》jp@gc - Stepping Thread Group (deprecated)

共5個階梯,每次加載20個,最終希望加載100個線程

 

添加BeahShell腳本

代碼實現了實時獲取活動的線程總數,根據活動線程總數賦值給變量Thread供后續事務調用

import org.apache.jmeter.threads.JMeterContextService;
int num = JMeterContextService.getNumberOfThreads();
System.out.println("當前活動線程數=" +num);
if(num<=20){
  System.out.println("線程區間1-20");
  vars.put("Thread","線程數1-20");
  }
​
  else if (num>20&&num<=40){
  System.out.println("線程區間20-40");
  vars.put("Thread","線程數20-40");
  }
  else if(num>40&&num<=60){
  System.out.println("線程區間40-60");
  vars.put("Thread","線程數40-60");
  }
  else {
  System.out.println("線程區間60-100");
  vars.put("Thread","線程數60-100");
  }

  

添加事物控制器和請求

把opms的login請求放到事物控制器下面。事物控制器的名稱是獲取的Thread變量。中間也可以添加一些監聽器

 

執行壓測腳本,觀察聚合報告

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM