loadrunner的同步點/集合點
執行負載測試時,需要在系統中模擬繁重的使用者負載。要實現此目的,需對Vuser進行同步,以便在完全相同的時刻執行任務。通過建立集合點,將多個Vuser配置為同時行動。當某個Vuser到達集合點時,它將等待,知道參與該集合的全部Vuser都到達集合點。當指定數目的Vuser到達後,將釋放Vuser。
一、在 Vuser 指令碼中插入集合點,可以指定集合位置。當 Vuser 執行指令碼並遇到集合點時,指令碼執行將暫停, Vuser 將等待來自Controller 的許可再繼續。當 Vuser 從集合中釋放後,它將執行指令碼中的下一個任務。
注: 集合點僅在 Action 部分有效,而在 init
可以通過以下方式插入集合點:
➤ 要在錄製時插入集合點,請單擊“錄製”工具欄上的集合按鈕,然後在對話方塊
中輸入名稱(不區分大小寫)。
➤ 要在錄製後插入集合點,請選擇插入 > 集合,然後在對話方塊中輸入名稱(不區
分大小寫)。
插入集合點之後, VuGen 將向 Vuser 指令碼中插入 lr_rendezvous 函式。例如,以下函式定義了名為“login”的集合點:
lr_rendezvous("login");
二、使用 Controller,您可以通過選擇以下各項來影響伺服器負載級別:
➤ 場景執行期間將啟用哪些集合點
➤ 每個集合將有多少個 Vuser 參加
例如,要測試銀行伺服器,您可以建立包含兩個集合點的場景。第一個集合確保1000 個 Vuser 同時存入現金。第二個集合確保另外 1000 個 Vuser 同時提取現金。
如何在場景中設定集合?
1、必備條件
要在場景中設定集合,場景中必須包含已插入集合點的 Vuser 指令碼。將 Vuser 組或指令碼新增到場景中時, LoadRunner 會在包含的指令碼中掃描集合點的名稱,然後將其新增到集合點列表中。通過選擇場景 > 集合,您可以檢視場景中所有集合點的列表。
注: 在面向目標的場景中,禁用指令碼的集合點。
2、設定模擬的使用者負載級別
選擇要參與場景的集合點,以及參與每個集合的 Vuser 數量。您可以暫時禁用集合並將它從場景中排除。您可以針對場景中的所有Vuser 禁用某個集合點,也可以暫時禁止特定的 Vuser 參與集合。通過禁用和啟用集合,可以調整伺服器的負載級別。
在“RendezvousInformation”對話方塊中,針對每個集合執行以下操作:3、設定集合策略的屬性
1)選擇集合,然後單擊【Policy】按鈕。
2) 在“Policy”對話方塊中,如下所示設定策略屬性:
➤ 釋放。一次將從集合釋放多少個 Vuser。
➤ 超時。Controller 在從集合釋放 Vuser 之前等待多長時間。