分享方式:


在 Azure 負載測試中使用 JMeter 指令碼執行網站的負載測試

了解如何使用 Azure 入口網站的 Azure 負載測試或使用 Azure CLI,使用 Apache JMeter 指令碼執行 Web 應用程式的負載測試。 Azure 負載測試讓您能採用現有的 Apache JMeter 指令碼,並用它來在雲端規模執行負載測試。 深入了解 Azure 負載測試支援的 JMeter 功能

使用現有的 JMeter 指令碼建立負載測試的使用案例,包括:

  • 您想重複使用現有的 JMeter 指令碼來測試您的應用程式。
  • 您想要測試非 HTTP 型端點,例如資料庫或訊息佇列。 Azure 負載測試支援 JMeter 支援的所有通訊協定。
  • 若要使用 CLI 命令,需有 Azure CLI 2.2.0 版或更新版本。 執行 az --version 以尋找電腦上安裝的版本。 如果您需要安裝或升級 Azure CLI,請參閱如何安裝 Azure CLI

必要條件

建立 Azure 負載測試資源

首先,您會建立 Azure 負載測試的最上層資源。 此資源提供一個集中位置,檢視及管理負載測試、測試結果以及相關成品。

如果已經有負載測試資源,請略過本節,繼續建立負載測試

建立負載測試資源:

  1. 使用您 Azure 訂閱的認證來登入 Azure 入口網站

  2. 從 Azure 入口網站功能表或 [首頁] 頁面,選取 [建立資源]

  3. 在 [Marketplace] 頁面上,搜尋並選取 [Azure 負載測試]

  4. 在 [Azure 負載測試] 窗格上,選取 [建立]

  5. 在 [建立負載測試資源] 頁面上,輸入下列資訊:

    欄位 描述
    訂用帳戶 選取您要用於此 Azure 負載測試資源的 Azure 訂用帳戶。
    資源群組 選取現有的資源群組。 或選取 [新建],然後為新的資源群組輸入唯一的名稱。
    名稱 輸入唯一的名稱,以識別您的 Azure 負載測試資源。
    名稱不能包含特殊字元,例如 \/""[]:|<>+=;,?*@& 或空白字元。 名稱不能以底線 (_) 開頭,而且不能以句號 (.) 或破折號 (-) 結尾。 長度必須是 1 到 64 個字元。
    地點 選取裝載 Azure 負載測試資源的地理位置。
    此位置也會決定測試引擎的裝載位置,以及測試架構要求的來源位置。

    注意

    或者,您也可以在 [標籤] 索引標籤中設定更多詳細資料。標籤為成對的名稱和值,可讓您將相同的標籤套用至多個資源與資源群組,以便為資源分類及檢視合併的帳單。

  6. 設定完資源後,請選取 [檢閱 + 建立]

  7. 檢閱您提供的設定,然後選取 [建立]。 建立帳戶需要幾分鐘的時間。 繼續進行之前,請等候入口網站頁面顯示 [您的部署已完成] 訊息。

  8. 若要檢視新資源,請選取 [前往資源]

  9. 或者,管理 Azure 負載測試資源的存取權

    Azure 負載測試會使用角色型存取控制 (RBAC) 來管理資源權限。 如果您的帳戶沒有管理測試的必要權限,您就會看到此訊息。

    螢幕擷取畫面:顯示 Azure 入口網站中,您未獲得授權因此無法使用 Azure 負載測試資源的錯誤訊息。

建立負載測試

接下來,您要上傳 Apache JMeter 測試指令碼 (JMX 檔案),以建立負載測試。 測試指令碼包含應用程式要求,以模擬應用程式端點的流量。

若要在 Azure 入口網站中使用現有的 JMeter 指令碼來建立負載測試:

  1. Azure 入口網站中,移至您的 Azure 負載測試資源。

  2. 在左側導覽中,選取 [測試] 即可檢視所有測試。

  3. 依序選取 [+ 建立] 和 [上傳 JMeter 指令碼]

    螢幕擷取畫面:顯示 [Azure 負載測試] 頁面和建立新測試的按鈕。

  4. 在 [基本] 索引標籤上,輸入負載測試詳細資料:

    欄位 描述
    測試名稱 輸入唯一的測試名稱。
    測試描述 (選擇性) 輸入負載測試描述。
    建立後執行測試 選取此設定會在儲存負載測試後自動啟動負載測試。
  5. 在 [測試計劃] 索引標籤上,選取您的 Apache JMeter 指令碼,然後選取 [上傳] 以將檔案上傳至 Azure。

    螢幕擷取畫面:顯示 [測試計劃] 索引標籤。

    注意

    您可以上傳其他 JMeter 設定檔或其他您在 JMX 檔案中參考的檔案。 例如,如果您的測試指令碼使用 CSV 資料集,您可以上傳對應的 .csv 檔案。 另請參閱如何從 CSV 檔案讀取資料。 JMeter 指令碼和使用者屬性以外的檔案,如果檔案大小超過 50 MB,請壓縮檔案。 zip 檔案的大小應小於 50 MB。 Azure 負載測試會在測試回合時自動解壓縮檔案。 最多只能有五個 zip 成品,每個 zip 不得超過 1000 個檔案,且未壓縮的總大小為 1 GB。

  6. 選取 [檢閱 + 建立]。 檢閱所有設定,接著選取 [建立] 以建立負載測試。

您可以隨時更新測試組態,例如上傳不同的 JMX 檔案。 在測試清單中選擇您的測試,然後選取 [編輯]

執行負載測試

當 Azure 負載測試啟動負載測試時,會先將 JMeter 指令碼和任何其他檔案部署到測試引擎執行個體,再啟動負載測試。

如果您已選取 [建立之後執行測試],您的負載測試會自動啟動。 若要手動啟動您稍早建立的負載測試,請執行下列步驟:

  1. 移至負載測試資源,從左窗格中選取 [測試],然後選取您稍早建立的測試。

    螢幕擷取畫面:顯示負載測試清單。

  2. 在測試清單分頁中,選擇 [執行],或是 [執行測試]。 然後,選取確認窗格上的 [執行] 以啟動負載測試。 您可以選擇是否提供測試回合描述。

    螢幕擷取畫面:顯示執行確認的頁面。

    提示

    您可以隨時從 Azure 入口網站停止負載測試。

  3. 請注意 Azure 入口網站中的測試回合詳細資料、統計資料和用戶端計量。

    如果測試指令碼中有多個要求,圖表會顯示所有要求,您也可以篩選特定的要求。

    螢幕擷取畫面:顯示測試執行儀表板。

    使用回合統計資料和錯誤資訊來找出在負載下的應用程式效能和穩定性問題。

將 URL 型負載測試轉換為 JMeter 型負載測試

如果建立了 URL 型負載測試,您就可以將測試轉換成 JMeter 型負載測試。 當您建立 URL 型負載測試時,Azure 負載測試會自動產生 JMeter 指令碼。

將 URL 型負載測試轉換為 JMeter 型負載測試:

  1. 移至您的負載測試資源,然後選取 [測試] 以檢視測試清單。

    請注意,[測試類型] 資料行會指出測試為 URL 型還是 JMeter 型。

  2. 選取 URL 型負載測試的省略號 (...),然後選取 [轉換成 JMeter 指令碼]

    螢幕擷取畫面:顯示 Azure 入口網站中的測試清單,醒目提示將測試轉換成 JMeter 型測試的功能表選項。

    或者,選取測試,再選取測試詳細資料頁面上的 [轉換成 JMeter 指令碼]

  3. 在 [轉換成 JMeter 指令碼] 頁面上,選取 [轉換],將測試轉換成 JMeter 型測試。

    請注意,測試清單中的測試類型已變更為 JMX

    螢幕擷取畫面:顯示 Azure 入口網站中的測試清單,醒目提示轉換測試的測試類型已變更為 JMX。