jmeter控制僅一次登錄的三種方案


jmeter控制僅一次登錄的三種方案分別是:

1、跨線程組

2、吞吐量控制器

3、僅一次控制器

 

一 跨線程組:

思路:將登錄作為一個線程組,其他接口作為另外一個線程組,登錄的線程組數量和循環次數設置為1,在登錄的線程組內通過正則獲取返回的token,

然后通過beanshell后置處理器將得到的token以全局變量的方式進行存儲,以便下一個線程組能夠取到該token的值;

腳本如下:

 

二、吞吐量控制器:也是之前看文章的時候聽說個這個控制器可以控制登錄的次數,自己實際操作了一下果然有用,

思路:在線程組下面添加一個邏輯控制器:吞吐量控制器,在吞吐量控制器里面添加登錄樣本,首先自己查看一下一次登錄大概是多少吞吐量(可以通過聚合報告獲取),

那么在吞吐量控制器里面設置值就設置一次登錄的吞吐量或者稍微大於一次登錄的吞吐量即可,設置完成后也同樣通過正則提取,通過beanshell后置處理器

將得到的token以全局變量的方式進行存儲(一定要存儲為全局變量,否則下一個樣本無法獲取到該token值),以便下一個樣本能夠取到該token的值;

腳本如下:這里之所以要用固定定時器是因為10個線程組是並行的,要等登錄接口獲取到token值后才執行http請求,

 

三、僅一次控制器:

僅一次控制器也是第一次實際運用,查資料才發現,僅一次控制器針對的是每一個線程組僅一次,那如果線程組數量設置的是10,僅一次控制器下的樣本

還是會執行10次,所以操作的時候,可以把線程組數量設置為1 ,循環設置為10,那么循環10次,僅一次控制器下的樣本只會執行一次。

設置完成后也同樣通過正則提取,通過beanshell后置處理器將得到的token以全局變量的方式進行存儲(一定要存儲為全局變量,否則下一個樣本無法獲取到該token值),

以便下一個樣本能夠取到該token的值;

 腳本如下:

 

 

以上三種方式均需要用到全局變量的存儲與取值:可以參考我本篇博客:https://www.cnblogs.com/lelexiong/p/9167668.html

 


免責聲明!

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



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