Jmeter之利用IF控制器讓采樣器按順序分組執行


先看一下效果:
  本文原創,歡迎轉發,但轉發請務必寫出處!  
 
思路:利用2個if控制器(ifA和ifB)判斷允許執行的sampler組(采樣A組和采樣B組)
設置用戶定義變量2個(flagA=0,flagB=1;其中0表示執行,1表示不執行),分別給2個if控制器的做判斷條件。
ifA中的sampler組執行了N次之后,使用Beanshell的后置處理器將flagA=1,flagB=0;(采樣A組不在執行,采樣B組執行)
 
詳細說明:
配置1、線程組,記得勾選調度器,用持續時間控制整體測試周期
 
配置2、用戶自定義變量,定義flagA和flagB
一、A組
1、如果(if)控制器1
 
2、循環控制器1,循環5次,然后執行BeanShellPostProcessor
3、BeanShellPostProcessor腳本
vars.put("project01flag","1");   //讓A組停止執行
vars.put("project02flag","0");   //讓B組開始執行
二、B組
1、如果(if)控制器2
2、循環控制器2,循環8次,然后執行BeanShellPostProcessor
3、BeanShellPostProcessor腳本
vars.put("project02flag","1");  //讓B組停止執行
本文原創,歡迎轉發,但轉發請務必寫出處!  
綜上所述:
已經可以控制線執行A組中的采樣組5次(實際測試中可以多放入幾個采樣器用於完成一個場景1),然后A組停止開始執行B組中的采樣組8次,盡管時間還沒有到30秒,但是此時控制A和控制B都停止執行(flagA=1,flagB=1),則此次Jmeter壓力測試也結束了。
 
這只一個思路的實現,並沒有經歷過真實的壓力測試,很有可能因為計數器導致無法產生壓力,如果有讀者經歷實踐發現本文章有漏洞請聯系作者,不甚感激。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


免責聲明!

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



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