設定基準測試
可以使用各種參數設定使用 Gatling 進行的基準測試。
這說明傳遞給 kcb.sh
shell 腳本的命令列選項。若要執行基準測試,請參閱從 CLI 執行基準測試。
設定概觀
此設定允許針對一個或多個 Keycloak 伺服器、領域、使用者和用戶端執行基準測試。所有這些實體都需要在測試執行之前存在。請參閱準備 Keycloak 進行測試以瞭解如何執行此操作。
如果設定參數允許多個值(例如,Keycloak 伺服器 URL)或解析為一系列值(例如,領域名稱),則這些值會隨機分配給情境內的每次執行。
一般參數
CLI 選項 | 預設值 | 注意事項 |
---|---|---|
|
(未設定) |
Keycloak 伺服器的 URL。 指定多個以空格分隔的 URL,以針對多個伺服器 URL 執行測試
|
|
false |
啟用在情境中並行使用者之間共用連線。如果負載產生器主機無法處理所需的 TCP 連線數量,這會很有用。請注意,使用此選項會對目標系統產生比現實世界更少的負載。請注意,只有在步驟之間暫停的情境才允許共用連線。
|
|
false |
由於測試可能涉及從單一測試系統到伺服器上的單一主機:連接埠的數萬個連線,我們可能需要新增其他位址以增加我們可以建立的 TCP 連線數量,這會啟用這些位址的使用。當目標是
|
|
ClientSecret 情境 |
要執行的情境的完整類別名稱,例如 |
(未設定) |
使用者可以提供增量值來執行增量基準測試,以找出給定受測系統在模擬中設定的判斷提示下的限制。如果 CLI 選項在沒有參數的情況下設定,則預設增量值為 |
|
|
(未設定) |
是否應為 Gatling 流程啟用 Java 遠端偵錯。如果 CLI 選項在沒有參數的情況下設定,則預設連接埠為 |
|
|
開放式工作負載模型:每秒要新增至模擬的使用者數量。每個使用者都會執行模擬一次。 應指定 |
|
(未設定) |
封閉式工作負載模型:多次執行相同情境的使用者數量。 應指定 |
|
|
達到完整負載的加速時間。 |
|
|
測試的測量時間(以秒為單位)。 |
|
|
某些情境中使用的使用者思考時間(以秒為單位)。 |
|
(未設定) |
如果設定,則會將所有失敗的 HTTP 要求記錄到主控台。 在測試期間以及分析問題時啟用此選項。切勿在負載測試期間使用此選項,因為它會降低 Gatling 的速度。 |
|
(未設定) |
如果設定,則會將所有 HTTP 要求記錄到主控台。 將記錄大量資訊。僅在開發期間使用此選項。切勿在負載測試期間使用此選項,因為它會降低 Gatling 的速度。 |
|
(未設定) |
如果設定,則會將所有 HTTP 要求 Proxy 至您選擇的 Proxy 工具,而目前預設的 Proxy 主機和連接埠分別為 切勿在負載測試期間使用此選項,因為它會降低 Gatling 的速度,才能夠將要求 Proxy 至 Proxy 用戶端,並且通常需要我們注意的 Proxy 細微差異。 |
|
|
執行期間失敗的要求最大百分比。 |
跨多個領域、使用者和用戶端執行
CLI 選項 | 預設值 | 注意事項 |
---|---|---|
|
|
可用的領域數量。使用從 0 到 使用預設值 |
|
|
每個領域中可用的使用者數量。使用從 0 到 使用預設值 |
|
1 |
每個領域中可用的用戶端數量。使用從 0 到 使用預設值 |
當使用下列範例參數執行 CLI 時
--realm=10 --users-per-realm=10 --client-per-realm=10
這會導致在情境中使用下列值
實體 | 值 |
---|---|
領域 |
|
使用者名稱 |
|
使用者密碼 |
|
用戶端 ID |
|
用戶端密碼 |
|
用戶端重新導向 URL |
各個領域的帳戶主控台
|
覆寫領域、使用者和用戶端的預設值
CLI 選項 | 預設值 | 注意事項 |
---|---|---|
|
設定領域名稱的前置詞。使用 如果未在 CLI 上設定,領域名稱會使用 |
|
|
(未設定) |
如果設定,測試會使用此參數中設定的單一領域執行。 如果未設定,並假設未設定 |
|
(未設定) |
如果設定,測試會使用此參數中設定的單一使用者名稱執行。 如果未設定,使用者名稱會從 |
|
(未設定) |
如果設定,測試會使用此參數中設定的單一密碼執行。 如果未設定,密碼會從 |
|
(未設定) |
如果設定,測試會使用此參數中設定的單一用戶端 ID 執行。 如果未設定,用戶端 ID 會從 |
|
(未設定) |
如果設定,測試會使用此參數中設定的單一用戶端密碼執行。 如果未設定,用戶端 ID 會從 |
|
(未設定) |
如果設定,測試會使用此參數中設定的單一用戶端重新導向 URI 執行。 如果未設定,重新導向 URL 會是各個領域的帳戶主控台。 |
(未設定) |
以逗號分隔的範圍清單,在發出驗證要求時設定。 如果未設定,則預設範圍為 |
其他設定
只有在情境需要這些設定時,才需要這些設定。請參閱情境概述以檢閱情境。
CLI 選項 | 預設值 | 注意事項 |
---|---|---|
|
(未設定) |
|
|
(未設定) |
|
|
在情境結束時登出的使用者百分比。用於情境 AuthorizationCode。 |
|
|
權杖重新整理之間的等待時間。用於情境 AuthorizationCode。 |
|
|
登入後權杖重新整理的次數。用於情境 AuthorizationCode。 |
|
|
|
在權杖重新整理後關閉 HTTP 連線。用於情境 AuthorizationCode。 |
(未設定) |
在情境 Get中呼叫的 URL。 |
延伸閱讀
如需可用選項的完整清單,請參閱Config.java。