2014-11-24 99 views
1

我JMeter的計劃是JMeter的:如何while循環使用一個循環內

-- Loop controller (set to 3) 
    -- while controller(set to "${Dataitems}" != "<EOF>") 
    -- using CSV for reading the data items 
    -- HTTP requests 

現在的問題是,在完成while循環後,線程是越來越停止。我知道這是CSV配置控制「EOF停止線程」= true將使線程停止。但我的要求是,通過我的csv迭代後,我想要控制傳遞給外部循環,這將根據我提供的變量運行3,所以所有請求將運行我爲csv提供的所有數據項目三次。

爲了實現我試圖設置

  1. = false,那麼爲intinte倍開始運行LOPP
  2. 「關於EOF停止線」= $ {VAR1},其中VAR1 「關於EOF停止線程」在測試計劃中聲明,但仍然循環運行無限次

有些人可以提供有關如何將控制從while循環切換到外循環的見解嗎?

您的幫助非常感謝。

回答

1

如您所知,控制器將保持運行狀態,直到條件失敗。

不幸的是,在你的情況下,你需要設置下面的條件來重申CSV文件的值。

'Recycle on EOF?' to TRUE 

所以,雖然控制器永遠不會退出,因爲您不能在那裏使用任何條件(以滿足您的要求)。

我認爲能夠滿足您需求的唯一方法是使用2個循環控制器。

(外)迴路控制器(如你所說的設置爲3)

(內蒙古)迴路控制器(在CSV設置爲無行)

我得到這樣的輸出。我的CSV文件有3行,數值爲A,B,C。它們被外環控制器調用3次。

enter image description here

如果你不想硬代碼迴路控制器的數量,使用變量&找到沒有使用BeanShell的行並將其值設置爲變量。