性能測試總結-jmeter經驗總結1-混合場景業務比例精准控制


平時測試中經常會遇到需要測試混合場景的壓測需求,那么混合場景如何去實現精准控制業務比例呢,網上有許多方法,其中一個比例控制最准確,干貨如下:

  • 線程組結構如下:
    _

  • 添加邏輯控制器(說明 本人使用的 jmeter版本為5.0)
    第一個邏輯里面的條件 填寫 {__jexl3({__jexl3({__counter(true,)}%10!=0,)}

_
第二個邏輯里面的條件填寫 {__jexl3({__jexl3({__counter(true,)}%10==0,)}

_

  • 執行原理分析
    線程組里的每個線程,會生成一個類似java里的iterator的迭代器,第一次迭代iterator值為1

如上所設置的條件,為1時滿足第一個邏輯,此時執行邏輯1里的sampler,第二次迭代iterator值為2,同樣滿足邏輯1
類推...
第十次迭代iterator值為10,滿足邏輯2,執行邏輯2里的sampler
以上實現精准控制9:1 的比例


  • 題外 3:1:1如何實現(以圖為准,展示不了如圖效果,我姿勢不對???)?
    _

{__jexl3(${__counter(true,)}%5==0,)}{__jexl3(${__counter(true,)}%5==0,)}{__jexl3({__counter(true,)}%5==1,)}{__counter(true,)}%5==1,)}{__jexl3(${__counter(true,)}%5>1,)}


  • 其他
    表達式支持:
                         ==         是否等於,如${__jexl3(${VAR}==1,)},判斷${VAR}變量是否等於1 !=  不等於,如${__jexl3(${VAR}!=1,)},判斷${VAR}變量是否不等於1 !  非,如${__jexl3(!(${VAR}!=1),)}對${VAR}!=1的結果取反 &&或||   且與或,如 ${__jexl3(${VAR}==1 && ${name} != "heima",)} > 或者>== 大於等於,如${__jexl3(${count}>=10,)}


免責聲明!

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



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